我有(无法更改)EF DataBase第一个项目,没有模型中的导航属性。EntityFramework 6 DatabaseFirst从代码中添加导航属性
我想延长自动生成的模型和添加导航属性
- 生成的模型
//generated.cs
public partial class company
{
public int id { get; set; }
public string name { get; set; }
}
public partial class user
{
public int id { get; set; }
public int company_id { get; set; }
}
- 我想从代码添加导航属性
//model_extension.cs
public partial class user
{
public company Company { get; set; }
}
我有例外情况“指定的类型成员'公司'在LINQ to Entities中不受支持。只有初始化,实体成员和实体导航属性都支持。”
我CodeFirst工作之前。
我明白,我必须链接到user.company_id公司 但不知道如何使用代码使这个(不设计师)
你需要的声音'ICollection':'公共ICollection Company {get;组; }'。您不能直接将模型类定义为导航属性,而无需先将其包装到受支持的集合中。 –
我需要公司。使用公司获取所有用户 - db.users.Include(x => x.Company).ToList()。但我不想改变.edmx –
你应该在你的表中有外键。 DbFirst将在生成模型时自动创建导航属性。 – Aby