【发布时间】:2014-07-09 15:57:13
【问题描述】:
我的 MVC 应用程序中有一个模型,其中包含 som 属性和 som 计算属性。当我尝试将模型的新对象发布到数据库时,我收到一个错误,即我的计算属性不能为空。
这是我的模型:
public class OrderItem
{
public int orderItemId { get; set; }
[DataType(DataType.MultilineText)]
public string orderItemDescr { get; set; }
public string orderItemText { get; set; }
public double orderItemFixeedPrice { get; set; }
public virtual Order orderItemOrder { get; set; }
public virtual OrderItemType orderItemType { get; set; }
public virtual ICollection<Time> orderItemTime { get; set; }
public virtual ICollection<Material> orderItemMaterial { get; set; }
public OrderItem ()
{ }
public OrderItem (Order order)
{
this.orderItemOrder = order;
}
public string orderItemTypeDescr
{
get
{
return (this.orderItemType.orderItemTypeNumber.ToString() + " - " + orderItemDescr);
}
}
public double orderItemMaterialSum
{
get
{
return orderItemMaterial.Sum(m => m.materialItmPrice * m.materialItem);
}
}
public double orderItemTimeCount
{
get
{
return orderItemTime.Sum(t => t.timeItem);
}
}
public double orderItemTimeSum
{
get
{
return orderItemTime.Sum(t => t.timePrice * t.timeItem);
}
}
public double orderItemSum
{
get
{
return orderItemTimeSum + orderItemMaterialSum;
}
}
}
属性上显示错误:orderItemMaterialSum、orderItemTimeCount、orderItemTimeSum 这些属性仅按您所见计算,不应有值。
只有当我创建一个对象并将其发布到数据库时才会出现问题。
【问题讨论】:
-
您收到的确切异常+消息是什么?如果您使用 ORM 来持久化数据,是哪一个?
标签: c# asp.net-mvc model-view-controller asp.net-mvc-5