2011-09-03 57 views
0

伙计们,我是C#DataEntity Framework的新手。 我在DB中有两个表格: 车辆的字段为id,measurementId。 测量字段Id,名称。 他们相互作为一对一。一辆车有一个措施。在DataEntity绑定标量属性(DataEntity Framework)

我想展开我想存储MeasurementName字段的实体车辆。我已经创建了属性MeasurementName,但我如何将它绑定到Measurement.Name。 DataEntity框架中可能吗?

我知道我可以achive一种方式,例如使用实体Linq的地方,我会创造新的

​​

但有可能扩大DataEntity具有这种属性?

回答

2

每个模型中的实体被实现为partial class,这意味着定义类可以在多个文件中存在,但被编译成一个对象中总代码。这使得它们具有高度可扩展性,因为您可以将属性和函数添加到由Entity Framework设计器生成的代码中。创建具有相同名称的新的部分类在同一个命名空间的实体,并添加像这样

public partial class Vehicles 
{ 
    public string MeasurementName { 
     get { 
      return this.Measurement.Name; 
     } 

     set { 
      this.Measurement.Name = value; 
     } 
    } 
} 

如果这个答案是对您有所帮助的自定义属性,请一定要投上一票或将其标记为接受的答案。

+0

是的,我可以这样做,但这个属性将不会在设计器中可见,当我opem edmx文件。如何将我在edmx设计器中添加的列映射到关联表中的字段? (设计器生成NOT部分属性,所以我不能将我的代码添加到外部文件中以使属性起作用) – Dzmitry

+1

据我所知,您不能。这就是设计师生成部分类的原因。设计师生成的代码的系统架构决定了通过创建部分类代码来扩展模型,而不是配置设计者去做它不打算做的事情。 – lsuarez

+0

Briliant解决方案,谢谢! – Rob