entity-framework-4 - Entity Framework : Map Foreign Key without Navigation Property?

标签 entity-framework-4 foreign-keys

动机:我的 EF4.1 DbContext 以错误的顺序保存实体

原因:我的模型缺少导航属性

我想如何修复它:

我想在我的 DbContext 中设置外键关系。问题是我的实体对象没有导航属性(我用它来填充 Web 服务,然后将 DTO 对象触发到我的应用程序)。

下面的类就是一个例子。在 MinorClass 中,我想配置我的上下文,以便它知道 MajorClassID 是一个外键。我在 Internet 上找到的关于如何明确定义外键的文章涉及使用我的对象没有的导航属性。

有没有办法映射这种关系?

public class MinorClass
{
    public Guid ID {get;set:}
    public Guid MajorClassID {get;set;} // foreign key
    public string Name {get;set;}
}

public class MajorClass
{
    public Guid ID {get;set;}
    public string Name {get;set;}
}

最佳答案

导航属性是主要构造,而外键是助手(恕我直言,错误的助手)。 EF 通过导航属性定义的关系来识别 DB 命令的排序。您不能仅通过外键定义关系。关系的至少一侧需要导航属性。

关于entity-framework-4 - Entity Framework : Map Foreign Key without Navigation Property?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8452725/

相关文章:

entity-framework-4 - Entity Framework 4 : Self referencing entities, 父/子

c# - 从具体化 'System.Guid' 类型到 'System.Int32' 类型的指定转换无效

MySQL 禁用外键检查 : What happens to "On Delete"?

sql - postgresql 和 Delete 语句违反外键约束

c# - 使用 ASP.NET MVC 3 和 EF 4.1 和 POCO 的复杂关系/访问控制

c# - 不确定如何修复这个奇怪的 Entity Framework (关系/导航)错误

c# - 使用 DbContext 进行延迟加载

ruby-on-rails - 在两个表上使用Rails定制的Foreign_key名称

mysql - 将外键添加到新创建的表(mySQL)时出错

mysql - 索引每一列以添加外键