我的DBContext中有一个类(Employee),我希望通过导航属性与另一个类(Office)连接。 Office类来自外部源。这是否可以轻松完成?
public class Employee
{
[Key]
public int EmployeeId { get; set; }
public string OfficeCode { get; set; }
public virtual Office Office { get; set; }
}
public class Office
{
public string OfficeCode { get; set; }
public string Name { get; set; }
}
public class MyContext : DbContext
{
public virtual IDbSet<Employee> Employees { get; set; }
public MyContext() : base("name=constring")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
}
}
可以收集办公室:
Office GetOfficeByOcd(string ocd);
答案 0 :(得分:1)
你不能这样做...
由于Office实际上不是您的数据库模型的一部分,因此您不能拥有像OfficeCode这样的“外键”属性。
但是,没有什么可以阻止您在Employee类上添加GetOfficeByOcd方法。
也就是说,由于GetOfficeByOcd方法并不真正依赖于Employee,因此最好将其移动到更合适的位置(如Office类或OfficeService)