我想从具有单个实体类的两个表中获取数据。怎么样??如何映射具有多个表的单个实体
public class HomeViewModel
{
[Key]
[Column("candidate_ID")]
public int candidateID { get; set; }
[Column("first_name")]
public string firstName { get; set; }
[Column("last_name")]
public string lastName { get; set; }
public string emailID { get; set; }
public string mb_country_code { get; set; }
public int mobile_no { get; set; }
}
上面的entity class拥有6个属性,其中3个属性表示一个table1,3个表示table2。 在数据库中的表1保持candidate_id作为主键和表中的两个拥有candidate_id为外键
更新:我做了添加的DbContext类
public class EmployeeMonitoring : DbContext
{
public DbSet<HomeViewModel> homeViewModel { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<HomeViewModel>().Map(m =>
{
m.Properties(a => new { a.candidateID, a.firstName, a.lastName,a.status });
m.ToTable("table1");
}).Map(m =>
{
m.Properties(c => new { c.candidateID,c.emailID, c.mobile_no, c.mb_country_code });
m.ToTable("table2");
});
}
}`
,并在控制器动作,我用下面的LINQ到实体查询
var data = db.homeViewModel.ToList();
但它什么也没有返回,即0计数。
我推荐mvc教程 – 2012-04-09 06:56:13
也添加标记实体框架4.1。 – 2012-04-09 08:17:39
@AndrewBarber - MVC教程如何讲述实体框架概念?任何MVC教程只会涵盖基本的EF,而不是像这样的高级概念。 – 2012-04-09 08:27:52