我将把CreateOrder()业务逻辑放在哪里?
class Order // this is an entity model for DbContext
{
public int Id { set; get; }
public String name { set; get; }
}
public void CreateOrder(Details details)
{
// set up Order fields
database_name.Order.Add(order);
}
控制器会调用obj.CreateOrder(details);
它会进入App_Code文件夹中的其他类吗?
答案 0 :(得分:0)
这个问题的答案已经有很多争论了。这完全取决于您希望如何构建应用程序。您可以在此处查看此问题的多个观点:MVC: Where to put business logic?
我见过CreateOrder方法属于Model的应用程序(在本例中是Order类)。
我还看到很多应用程序使模型保持尽可能干净(POCO类,就像你现在的那样),并将CreateOrder方法放在一个处理任何业务特定规则的业务层中,另一个CreateOrder方法放在一个数据层,可以处理实际将其提交给数据库。
有些设计适用于小型应用程序,而有些设计则适用于更复杂的应用程序。