MVC为何不加载子对象的数据
MVC为什么不加载子对象的数据?
当调用db.ClientRegisters.ToList()后,FreeTryModel的数据都为null,而RegisterModel的数据全部已加载,不知为什么?是不是与生成的数据库有关系?
生成的数据库表结构:
------解决方案--------------------
确定那个外键值有值吗?在数据库中
------解决方案--------------------
长话短说:
1、这和MVC没有任何关系,你说的是问题最多只能算是Entity Framework的问题;
2、你的ClientRegister没有指定外键,怎么可能加载关联对象?
3、即使指定了外键,在获取数据时也得用Include方法显式指定要加载的关联对象才行。
当调用db.ClientRegisters.ToList()后,FreeTryModel的数据都为null,而RegisterModel的数据全部已加载,不知为什么?是不是与生成的数据库有关系?
public class ClientRegister
{
//public ClientRegister()
//{
// this.RegisterModel = new RegisterModel();
// this.FreeTryModel = new FreeTryModel();
//}
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int ID
{
get;
set;
}
public RegisterModel RegisterModel
{
get;
set;
}
public FreeTryModel FreeTryModel
{
get;
set;
}
}
生成的数据库表结构:
------解决方案--------------------
确定那个外键值有值吗?在数据库中
------解决方案--------------------
长话短说:
1、这和MVC没有任何关系,你说的是问题最多只能算是Entity Framework的问题;
2、你的ClientRegister没有指定外键,怎么可能加载关联对象?
3、即使指定了外键,在获取数据时也得用Include方法显式指定要加载的关联对象才行。