在哪里放置更新表的业务逻辑?

Where to put the business logic for updating tables?

我应该把 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 文件夹中的另一个 class 中吗?

这个问题的答案已经争论了很多。这完全取决于您希望如何构建应用程序。您可以在此处查看对此问题的多种观点:MVC: Where to put business logic?

我见过 CreateOrder 方法是模型的一部分的应用程序(在本例中是订单 class)。

我还看到很多应用程序尽可能保持模型干净(POCO classes,正如您目前所做的那样),并将 CreateOrder 方法放在处理任何特定业务的业务层中规则,以及数据层中的另一个 CreateOrder 方法,该方法实际处理将其提交到数据库。

一些设计更适合小型应用程序,而另一些设计更适合更复杂的应用程序。