我的数据库中有很多表,其中一个需要为所有这些表保存公共数据。如何使用 EntityFramework CodeFirst 映射这些表,以便我可以使用普通查询 Lazy 或 Eager 加载此类数据?
这就是我的意思:
实体:
public class Table1
{
[Key]
public int Id { get; set; }
...etc data
}
public class Table2
{
[Key]
public Guid Id { get; set; }
...etc data
}
public class Table3
{
[Key]
public string Id { get; set; }
...etc data
}
还有一张包含所有这些数据的表格:
public class CommonDataTable
{
[Key]
public Guid Id { get; set; }
}
通常我会通过创建如下表来映射它:
public class CommonDataMappingTable
{
[Key]
public Guid Id { get; set; }
public string Mask { get; set; } // like: typeof(Table3).Name
public string MappedID { get; set; } // like: Table3.Id.ToString()
public virtual CommonDataTable MappedData { get; set; }
}
但是一旦我对实体框架不熟悉,我就是不知道如何在 EF CodeFirst 模型中映射这种关系。感谢您的宝贵时间,并为我糟糕的英语感到抱歉。