【发布时间】:2014-09-07 05:47:07
【问题描述】:
我有一个包含一些计算属性的文档。没有setter并且可以在我的类上调用其他方法来返回结果的属性,例如:
public class Order
{
public string CustomerId { get; set; }
public string VehicleId { get; set; }
public DateTime OrderDate { get; set; }
public decimal CommissionPercent { get; set; }
public List<OrdersLines> OrderLines { get; set; }
public decimal Total
{
get { return GetOrderLinesTotal() + SomeDecimal + AnotherDecimal; }
}
public decimal GetOrderLinesTotal()
{
return OrderLines.Sum(x => x.Amount);
}
}
我使用一个简单的索引来按客户、日期和 Vehicle 文档上的某些属性搜索订单,使用 lucene 查询和 Transformer 来创建我的视图模型。我查看了脚本索引结果,但不确定它是否适用于这种情况。
public class ViewModel
{
public string OrderId { get; set; }
public string CustomerName { get; set; }
public string VehicleName { get; set; }
public string Total { get; set; }
}
当我查询这些文档时,如何从 Total 属性中获取计算值?
我对 GetOrderLinesTotal 做了一些简化,实际上它是一个复杂的方法,在计算总数时会考虑很多其他属性。
我只得到在文档创建或更新时序列化的计算值。
【问题讨论】:
标签: ravendb