【发布时间】:2013-12-21 19:15:37
【问题描述】:
我真的是 ASP.NET 的新手,我查看了无数教程试图弄清楚这一点,但似乎无法理解它。我可以使用 ListView 和实体框架成功地从 tbProject 输出记录,但是我想显示 refDepartment 表中的 refDepartmentValue 而不是 refDepartmentID。这是一个快速的表结构。
tbProject
-ProjectID
-refDepartmentID
-ProjectName
refDepartment
-refDepartmentID
-refDeparmentValue
我可以用 JOIN 用 SQL 写这个,但我不知道我应该把它放在哪里。我已经玩过 LINQ 了,看来这就是我要完成的方法。也许在文件后面的代码中编写 LINQ,然后将其绑定到 ListView 控件,也许?
这是 ListView 控件:
<asp:ListView runat="server"
DataSourceID="EntityDataSource1">
<ItemTemplate>
<tr style="">
<td>
<asp:Label ID="ProjectIDLabel" runat="server" Text='<%# Eval("ProjectID") %>' />
</td>
<td>
<asp:Label ID="refDepartmentIDLabel" runat="server"
Text='<%# Eval("refDepartmentID") %>' />
</td>
</tr>
</ItemTemplate>
<LayoutTemplate>
<table runat="server">
<tr runat="server">
<td runat="server">
<table ID="itemPlaceholderContainer" runat="server" border="0" style="">
<tr runat="server" style="">
<th runat="server">
ProjectID</th>
<th runat="server">
refDepartmentID</th>
</tr>
<tr ID="itemPlaceholder" runat="server">
</tr>
</table>
</td>
</tr>
<tr runat="server">
<td runat="server" style="">
</td>
</tr>
</table>
</LayoutTemplate>
</asp:ListView>
这是我使用 EF 填充下拉列表的方式,因此您至少可以参考事物的命名方式。
// populates Departments dropdownlist
using (dbOrganizationEntities1 myEntities = new dbOrganizationEntities1())
{
var allDepartments = from refDepartments in myEntities.refDepartments
select refDepartments;
ddlDepartments.DataSource = allDepartments;
ddlDepartments.DataValueField = "refDepartmentID";
ddlDepartments.DataTextField = "refDepartmentValue";
ddlDepartments.DataBind();
}
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: c# asp.net linq entity-framework listview