如何使用LinqToSql访问外键相关的列值?

时间:2008-11-27 15:54:50

标签: c# linq-to-sql

我正在尝试连接LinqToSql作为我的数据访问层并遇到一些问题,可能是由于我缺乏LinqToSql的经验。

我有两个表,一个名为Project,另一个名为Employee。项目包含OpenedBy和ClosedBy的字段,这些字段是Employee表的外键引用,其中包含EmployeeId和Name的字段。

当我获取项目时,我希望它获取OpenedBy和ClosedBy的EmployeeName。我想访问以下内容:

// assuming data is of type project

this.OpenedByName.Text = data.OpenedByName;
this.ClosedByName.Text = data.ClosedByName;

每当OpenedBy或ClosedBy发生变化时,是否也可以设置这些值?这可能吗?示例代码将非常感谢!

澄清

我想这样做而不必使用存储过程。

1 个答案:

答案 0 :(得分:1)

如果您有来自Employee表的2个关系,我认为您在每个Project实体中都有2个子属性,project.Employeeproject.Employee1

您可以更改关联的名称,只需转到关系属性,选择子属性,然后将每个子Employee的名称更改为更具描述性。

您可以根据需要命名子属性,例如:

this.OpenedByName.Text = data.OpenedByEmployee.Name;
this.ClosedByName.Text = data.ClosedByEmployee.Name;