首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >聚合根域逻辑

聚合根域逻辑
EN

Stack Overflow用户
提问于 2011-10-31 23:31:52
回答 1查看 172关注 0票数 1

假设我有以下3个类:

代码语言:javascript
运行
复制
public class User 
{
   public int UserId { get; set; }
   public ICollection<Location> { get; set; }
}
public class Location
{
   public int LocationId { get; set; }
   public int UserId { get; set; }
   public ICollection<Sale> Sales { get; set; }
}
public class Sale
{
  public int SaleId { get; set; }
  public int LocationId { get; set; }
  public decimal Cash { get; set; }
}

我有一个单一的页面上的要求,我将显示所有位置的现金总额的用户谁已经登录。我正在考虑将GetTotalCash()方法放在Locations类上,并通过LINQ在那里实现求和,但问题是我将通过User类访问Locations对象,并且我将无法调用since方法,因为Location属性是User类上的ICollection。我应该把逻辑放在User类上吗?但这没有意义,因为它不是用户对象的行为,不是吗?

顺便说一下,我使用的是EF 4.1 Code First和MVC 3。

非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2011-11-01 18:27:33

在locations类中实现GetTotalCash()方法,在user类中实现GetCashForLocation()以获取所选位置的现金(这将委托对locations类的GetTotalCash()的调用,并在user类中实现GetTotalCash(),它将迭代所有位置并对它们的现金求和。

然后,为每个信息专家类分配应受谴责的对象,并从聚合根中进行委派

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7955875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档