我有一个关系数据库,假设它包含一个Employee的表和Department的表以及一个EmployeesType表。
员工的表有一个DepartmentId,EmployeeTypeId外键
现在我创建了一个带有实体数据模型的silverlight应用程序,并生成了一个域服务类
现在我想在网格中显示员工信息..当然我无法在网格中显示部门名称和EmployeeType名称
我必须在元数据中使用包含数据注释..
我这样做..但是如何在一个查询中显示所有包含的字段?
我用过这个
public IQueryable<Employee> GetEmployeesWithDepartments()
{
return this.ObjectContext.Employees.Include("Department.EmployeesType");
}
但我设法显示部门仅 .. 其他外键怎么办?
如何将其添加到我的查询中?
答案 0 :(得分:0)
绑定到Employee时,您可以访问Department id,如:
{Binding Employee.Department.Id}
您可以像
一样访问EmployeeType{Binding Employee.EmployeesType.Id}
这就是你问的吗?
答案 1 :(得分:0)
好的伙计......经过两天的反复试验......我终于找到了它
这是你应该做的......
在你的getEmployees方法或你使用的任何反击方法中,你可以包括所有的忘记密钥,如下所示
public IQueryable<Employee> GetEmployeesWithDepartments()
{
return this.ObjectContext.Employees.Include("Department").Include("EmployeeType");
}
对于您已包含在元数据类中的每个forgin键,等等
然后在前端,您现在可以访问Department属性并使用Binding语法将其与您的View绑定
如下:
<TextBlock Text="{Binding Department.DepartmentName"/>
感谢您尝试提供帮助