也许这很简单,但我坚持下去,我没有找到任何关于如何完成的答案。我有一个父实体用户,其中包含一组子实体操作。这两个实体仅用于 UI,因此它们是视图的一种。这是伪代码
public class User
{
public int Id {get; set;}
public IEnumerable<Operation> Operations {get; set;}
public int TotalSuccessfulAccesses {get; set;} // not mapped to the database
public int TotalFailedAccesses {get; set;} // not mapped to the database
}
public class Operation
{
public int Id {get; set; }
public int UserId {get; set; } // FK
public int NbSuccessfulAccesses {get; set; }
public int NbFailedAccesses {get; set; }
}
我想做的是在一次到数据库的往返中从子集合中初始化具有 TotalSuccesfulAccesses 和 TotalFailedAccesses 的用户。
对于每个用户,我们应该计算Sum(Operation.NbSuccessfulAccesses)和Sum(Operation.NbFailedAccesse)并分别对User.TotalSuccesfulAccesses和User.TotalFailedAccesses进行投影。
我尝试使用多标准和几个查询,但我对此并不满意。我想知道是否有一种简单的方法可以通过投影或其他方式来实现。或者,也许我错过了什么。
你会推荐什么 ?
提前感谢您的帮助。