1

MVCソリューションのデフォルトの設計を使用できます。たとえば、コントローラー:

public class ProductController : Controller
   {
       private Entities db = new Entities();

       public ViewResult Details( int id )
          {
              Product product = db.Products.Single( p => p.ID == id );
              return View( product );
          }
    }

しかし、私はいくつかの大規模なプロジェクトで、任意のメソッドを呼び出すために、たとえばサービスのみを使用しているのを見ました

public class ProductController : Controller<ISomeService>
{
 public ViewResult Details( int id )
    {
       Product product = MyService.GetProductById();
       return View( product );
    }
}

次のようなコントローラーでデータベースインスタンスを使用しない。

private Entities db = new Entities();

モデルDB、およびビジネスロジックは、ソリューションの異なるプロジェクトです。

どのサンプルでも、この構造についてどこから学ぶことができますか?(英語が下手でごめんなさい)

4

1 に答える 1

1

ASP.NETMVCでの依存性注入の使用を見てみましょう。このテーマに関する記事は次のとおりです。

http://weblogs.asp.net/shijuvarghese/archive/2010/04/30/dependency-injection-in-nerddinner-app-using-ninject.aspx

次に、別の記事であるEntityFrameworkでのRepository/UnitOfWorkパターンの使用を見てみましょう。

http://www.codeproject.com/Tips/309753/Repository-Pattern-with-Entity-Framework-4-1-and-C

そして、このすべてのコードを自分で実行することに興味がない場合は、ここで使用するか、少なくとも実行方法を確認することができます。

http://mvcbootstrap.codeplex.com

于 2012-09-24T06:40:53.163 に答える