[英]Entity Framework appending '1' to property name when it matches entity name
我正在使用Entity Framework 4.0版使用数据库第一种方法创建模型。 在数据库中,有许多表包含与其父表相同的列。
例如,我们有
问题是,当其中一个表被导入EF模型时,这些列被映射的属性名称会在它们的末尾附加一个“1”。
所以我最终得到了
当我尝试删除末尾的“1”时,我收到一条消息“在这种情况下,名称状态不能重复。请选择其他名称。”
有没有办法让我的财产保留其名称,或者这是框架中记录的限制?
您不能在班级中拥有一个名为您的班级的成员。
例:
class Test
{
// Invalid
int Test;
// Invalid
public int Test {get; set; }
// OK
int Test1;
}
供将来参考......我的问题通过删除解决了。 我错过了主键被映射到基类中的“int id”字段的事实。 当我看到这个模式
this.Property(t => t.id).HasColumnName("MyEntityKey");
我错误地认为我需要将“int MyEntityKey”属性添加到MyEntity。 它与基本id映射冲突并增加了我添加的属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.