【发布时间】:2016-01-16 10:15:43
【问题描述】:
Employee 表具有与Department 表的Id 列相关的Departmentid 外键。
现在,如果我从Employee 表中选择所有行,我应该在Employee 表的外键列中获取它们各自DepartmentId 的部门名称。
我正在使用实体框架,我可以通过创建Department 表的另一个对象来使用连接。
输出应该是这样的:
EmployeeName EmployeeAddress EmployeeDepartment
abc xyz IT
它应该自动获取Employee的外键值
lamiEntities1 lam = new lamiEntities1();
var query =( from sls in lam.sales.AsEnumerable() join it in lam.items on sls.ItemId equals it.Id orderby sls.Id descending
select new
{
ItemName = it.ItemName,
TotalAmounts = sls.Amount,
Remarks=sls.Remarks,
Dates = sls.Date
}).Take(20);
GridView1.DataSource = query;
GridView1.DataBind();
在这里我如何删除加入并使用 itemid 外键直接使用 itemname
【问题讨论】:
-
我猜你的意思是没有 explicit 加入你的查询。使用导航属性,EF 会为您做到这一点。
-
是的,我不想加入并制作另一个对象并匹配两个属性。如果我使用外键关系,它应该自动获取它的值
-
您的实际问题是什么?您能否提供一些代码并更详细地描述问题?
-
自动获取外键值而不使用 join ,使用 Linq-Entity Query ?我的问题没有什么花哨的,请阅读文字
-
您的问题和代码不匹配。我建议您阅读Entity Framework associations mapping。
标签: c# entity-framework linq linq-to-sql linq-to-entities