有沒有人能夠找到一個乾淨的解決方案,以使用EntityDataSource在GridView中顯示外鍵值?GridViews中的實體外鍵
例如,我的Employees表有一個(FK)JobTitleID,我希望Employees GridView顯示一個Job Title列。
有沒有人能夠找到一個乾淨的解決方案,以使用EntityDataSource在GridView中顯示外鍵值?GridViews中的實體外鍵
例如,我的Employees表有一個(FK)JobTitleID,我希望Employees GridView顯示一個Job Title列。
您可以使用將值綁定到TemplateField。在裏面你可以使用適合你數據類型的任何類型的綁定控件。下面是一個例子:
<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>
我已經使用JobTitle.Name
假設的JobTitleID
連接到JobTitle
實體。
我試過這個,它沒有像廣告那樣直接工作。您還需要確保相關表在EntityDataSource的Include屬性中被引用。我在EntityDataSorce'Configure Data Source'嚮導中看不到任何方法來控制它,所以我在HTML中手動輸入。
更多信息here在MSDN文檔中。
PS。我在其他地方讀過,你必須使用Eval,但我似乎可以互換使用Eval或Bind。
完美地爲我工作:)謝謝! – David 2011-11-26 19:23:18
不幸的是我不能在我目前的網站上測試這個,但我會根據上面的評論將它標記爲正確的答案。 – Jesse 2013-05-20 19:43:54