データベースからデータを取得していくつかのオプションを表示するドロップダウン リストがあります。
<asp:DropDownList ID="DropDownList3" runat="server" DataSourceID="SqlDataSource1"
DataTextField="Name" DataValueField="PK_Task" AppendDataBoundItems="true" CssClass="dropDownList">
<asp:ListItem Selected="True">General Support</asp:ListItem>
<asp:ListItem>Vacation</asp:ListItem>
<asp:ListItem>Sick Leave</asp:ListItem>
<asp:ListItem>Something Else</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] NOT LIKE 'Done'">
<SelectParameters>
<asp:QueryStringParameter Name="PointPerson" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
ご覧のとおり、[Name] 列のみを表示します。
DataTextField="Name"
しかし、主キーの SELECT [PK_Task], [Name] FROM も取得しています。
DataValueField="PK_Task"
ユーザーの選択に基づいて、この主キーにアクセスするにはどうすればよいですか。ユーザーがドロップダウン メニューから特定の「名前」を選択した場合、対応する主キーを返して変数に保存するには、どの C# を使用できますか?
私が得た最も近いものはこれですが、文字列「PK_Task」を返すだけです。
String taskID = DropDownList3.DataValueField;