Pet*_*etr 5 mapping code-first ef-code-first c#-4.0 entity-framework-4.1
我首先使用实体框架4.1代码.我有经典样本:Order和OrderLines.每个OrderLine都有自己的价格,我想订购物业TotalPrice.
我现在不确定要声明TotalPrice属性.我可以使用linq sum将其定义为readonly,但是每当我将其添加到结果集时,它必须从db获取所有订单行以总结它的价格.
我正在考虑解决方案,它将全价存储到数据库(用于查询)并仅在订单保存之前重新计算(或者如果订单行更改),但我不知道如何做到这一点.
如何在EF中处理这样的场景?
感谢Petr的建议
为了简单起见,我建议不要存储而只是向分部类添加计算方法。我们之前已经通过*Methods后缀完成了此操作。例如:
订单.cs:
public partial class Order
{
public ICollection<OrderLine> OrderLines { get;set; }
//Other EF Properties
}
Run Code Online (Sandbox Code Playgroud)
订单行.cs:
public partial class OrderLine
{
public double Price { get;set; }
//Other EF Properties
}
Run Code Online (Sandbox Code Playgroud)
订单方法.cs
public partial class Order
{
public double GetTotalPrice()
{
// Total price calculation
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
797 次 |
| 最近记录: |