当我使用简单的主细节关系时
public class Master
{
public long ID { get; set; }
public virtual Detail Detail { get; set; }
}
public class Detail
{
public long ID { get; set; }
}
代码首先创建了我期望的数据模型:外部母版表引用内部细节。当我以某种方式改变它时,主引用它自己
public class Master
{
public long ID { get; set; }
public virtual Master Inner { get; set; }
}
代码首先创建一个内部母版引用外部母版的数据模型。为什么在这种情况下实体框架的行为有所不同?我能用数据注释(避免fluent api)来纠正这个问题吗?
发布于 2013-12-20 10:47:00
实体框架工作正常。您可以通过添加一个Value属性来看到这一点:
public class Master
{
public long ID { get; set; }
**public string Value { get; set; }**
public virtual Master Inner { get; set; }
}
实体框架所做的一切,都是颠倒对象的顺序。根对象具有最高的id,而最内部的对象是以ID = 0开头的对象。(想想看,EF这么做的原因很明显)。
所以我只是曲解了数据。
https://stackoverflow.com/questions/20665800
复制相似问题