所以我在我的ASP.NET-MVC5应用程序中使用这种模式。
控制器< - >服务层< - >数据层< - >数据库
我使用AutoMapper在服务层的DbSet结果和控制器中的ViewModels之间进行映射。
但是如果我需要从我的服务层返回不是DbSet的自定义实体呢?我是否需要创建新实体以保持模式清洁?
例如:
DbSet
public class Customer
{
public int CustomerID { get; set; }
public string Name { get; set; }
public string Phone { get; set; }
public string Address { get; set; }
}
public class Order
{
public int OrderID { get; set; }
public dec Amount { get; set; }
public int CustomerID { get; set; }
public Customer Customer { get; set; }
}
现在,如果我的服务层中有CalculateCustomerTax(int ID)
这样的内容,则此方法将返回3个值,即CustomerName,TotalTax,TotalAmount。
我想要保持这种模式的清洁,因为在服务层返回ViewModels会失败。
任何帮助将不胜感激