EntityDataSourceを使用してGridViewに外部キー値を表示するためのクリーンなソリューションを誰も見つけることができましたか?GridViewsのエンティティの外部キー
たとえば、私の従業員テーブルには(FK)JobTitleIDがあり、従業員のGridViewに仕事のタイトル列を表示させたいとします。
EntityDataSourceを使用してGridViewに外部キー値を表示するためのクリーンなソリューションを誰も見つけることができましたか?GridViewsのエンティティの外部キー
たとえば、私の従業員テーブルには(FK)JobTitleIDがあり、従業員のGridViewに仕事のタイトル列を表示させたいとします。
値をTemplateFieldにバインドすることができます。内部には、あなたのタイプのデータに適したBindコントロールのタイプを使用できます。私はJobTitleID
がJobTitle
エンティティに接続されていることを想定しJobTitle.Name
を使用していた
<asp:GridView ID="gvEmployees" runat="server" AllowSorting="true" AutoGenerateColumns="false" DataKeyNames="ID" DataSourceID="godsCourses">
<Columns>
<asp:TemplateField HeaderText="Job Title">
<ItemTemplate>
<asp:Literal ID="hlProgram" runat="server" Text='<%# Bind("JobTitle.Name") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
:ここでは一例です。
私はこれを試しましたが、広告されたとおりに直接動作しませんでした。また、関連するテーブルがEntityDataSourceのIncludeプロパティで参照されるようにする必要があります。 EntityDataSorceの「データソースの設定」ウィザードでこれを制御する方法がないので、HTMLで手入力しました。
詳細情報here MSDNのドキュメント。
PS。私はあなたがEvalを使用しなければならないと他の場所で読んだことがあるが、私はEvalまたはBindを同じ意味で使うことができるようだ。
ありがとうございました! – David
残念ながら、現在のサイトでこれをテストすることはできませんが、上記のコメントに基づいて正解とマークします。 – Jesse