【发布时间】:2015-09-30 03:14:09
【问题描述】:
我正在使用 MVC 5 和 EF 6。
我的代码中有 3 个表:“Leads”、“Phones”、“LeadStatus”和一个连接表“LeadPhones”。 我想在索引视图中显示以下属性:
Leads.FullName
LeadStatus.Status
Phones.PhoneID
我应该如何配置 LeadController?
public partial class Leads
{
public Leads()
{
this.LeadPhones = new HashSet<LeadPhones>();
}
[Key]
public int LeadID { get; set; }
public string Title { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string FullName { get { return NamePrefix + " " + FirstName + " " + LastName; } }
public int LeadStatusID { get; set; }
public virtual LeadStatus LeadStatus { get; set; }
public virtual ICollection<LeadPhones> LeadPhones { get; set; }
}
和
public partial class Phones
{
public Phones()
{
this.AccountPhones = new HashSet<AccountPhones>();
this.ContactPhones = new HashSet<ContactPhones>();
this.EmployeePhones = new HashSet<EmployeePhones>();
this.LeadPhones = new HashSet<LeadPhones>();
}
[Key]
public int PhoneID { get; set; }
public string PhoneNo { get; set; }
public virtual ICollection<LeadPhones> LeadPhones { get; set; }
}
和
public partial class LeadPhones
{
[Key]
public int LeadPhoneID { get; set; }
public int LeadID { get; set; }
public int PhoneID { get; set; }
public virtual Leads Leads { get; set; }
public virtual Phones Phones { get; set; }
}
和
public partial class LeadStatus
{
public LeadStatus()
{
this.Leads = new HashSet<Leads>();
}
[Key]
public int LeadStatusID { get; set; }
public string Status { get; set; }
public virtual ICollection<Leads> Leads { get; set; }
}
以下不起作用:
public ActionResult Index()
{
var leads = db.Leads.Include(l => l.LeadStatus).Include(l => l.LeadPhones);
return View(leads);
}
主要问题是“PhoneNo”。我怎么能从联结表中得到它?
【问题讨论】:
-
您拥有的只是数据库。您尝试过什么,出了什么问题?
-
我更新了问题。谢谢你的反对:)
-
从 LeadPhones 表中移除 LeadPhoneID 列。
标签: asp.net-mvc linq entity-framework-6 viewmodel