1

私は .net/c# とビジュアル スタジオが初めてです。私は答えを求めてインターネット全体を探していましたが、見つけることができませんでした。ご協力いただきありがとうございます。

データベース テーブルからドロップ ダウン リストを作成しています。動的パラメーターを asp サーバー コントロール (ログインしているユーザーのユーザー名) に渡したいと考えています。この動的文字列を配置したい 2 つの領域に PUT_LOGGED_IN_USERNAME_HERE を追加しました。

<asp:DropDownList ID="DropDownList1" runat="server" 
    DataSourceID="SqlDataSource1" DataTextField="Name" DataValueField="PK_Task" AppendDataBoundItems="true">
    <asp:ListItem Selected="True">Supportive</asp:ListItem>
</asp:DropDownList>

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:ApplicationServices %>" 

    SelectCommand="SELECT [PK_Task], [Name] FROM [Task] WHERE ([PointPerson] LIKE '%' + @PointPerson + '%') AND [Status] LIKE 'Done'">
    <SelectParameters>
        <asp:QueryStringParameter DefaultValue="PUT_LOGGED_IN_USERNAME_HERE" Name="PointPerson" 
            QueryStringField="PUT_LOGGED_IN_USERNAME_HERE"" Type="String" />
    </SelectParameters>
</asp:SqlDataSource>

どうすればこれを達成できますか?

ユーザー名を表示するコードを見つけました:

<%= Page.User.Identity.Name %>

ただし、次のように使用すると機能しません。

<asp:QueryStringParameter DefaultValue="<%= Page.User.Identity.Name %>" Name="PointPerson" 
     QueryStringField="<%= Page.User.Identity.Name %>"" Type="String" />
4

1 に答える 1

1

次のように、コード ビハインドのパラメーターを含む SqlDataSource のプロパティにアクセスできます。

SqlDataSource1.SelectParameters["PointPerson"].DefaultValue = "User";
于 2013-06-26T22:05:10.390 に答える