首先在更改ForeignKey(CommodityGroupID)时自动获取CommodityGroup的商品对象,但是在EF Code First(4.3.1)中没有这样做。实体框架数据库优先和EF代码先在EF数据库中获取关系对象编号
public class Commodity
{
public int CommodityID { get; set; }
public string MadeBy { get; set; }
public decimal ServiceTimePrice { get; set; }
public decimal QCPrice { get; set; }
public int ServicePoint { get; set; }
public string Note { get; set; }
public int CommodityGroupID { get; set; }
[ForeignKey("CommodityGroupID")]
public virtual CommodityGroup CommodityGroup { get; set; }
}
public class CommodityGroup
{
public int CommodityGroupID { get; set; }
public string CommodityGroupName { get; set; }
public virtual ICollection<Commodity> Commodities { get; set; }
}
此属性在Edmx文件(数据库优先)中定义,我应该首先在ef代码中定义此代码?
[BrowsableAttribute(false)]
[DataMemberAttribute()]
public EntityReference<CommodityGroup> CommodityGroupReference
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<CommodityGroup>("GaamRepairModel.FK_Commodity_CommodityGroup", "CommodityGroup");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<CommodityGroup>("GaamRepairModel.FK_Commodity_CommodityGroup", "CommodityGroup", value);
}
}
}
你是否启用延迟加载? – 2012-08-08 05:14:04
你可以请你的代码改变/获取数据? – 2012-08-08 05:20:03
是的,LazyLoadingEnabled = true – Hono 2012-08-09 19:55:43