2013-07-18 22 views
12

ASP.NET MVCでモデルバインディングとは何ですか、なぜそれが必要ですか?誰かが簡単な例を与えることができますか、強く型付けされたビューを作成することによってモデルバインディングを達成できるか?ASP.NET MVCのモデルバインディングとは何ですか?

+0

チェックでこの:http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-an -entity-framework-data-model-as-asp-net-mvc-application – FSou1

+0

懸念を分離し、より多くのOOP方法を作るために必要です。 – DarthVader

+0

[ASP.NET MVC 3モデルバインディングリソース]の重複可能性(http://stackoverflow.com/questions/5692964/asp-net-mvc-3-model-binding-resources) – CodeCaster

答えて

17

ModelBindingは、ASP.NET MVCが入力ストリーム(通常はHTTP要求)から強く型付けされたオブジェクト(またはプリミティブ型のパラメータを埋め込む)を作成するために使用するメカニズムです。例えば

、このPersonモデルを検討:今

public class Person 
{ 
    public string Name { get; set; } 
    public int Age { get; set; } 
} 

を、あなたは、パラメータとしてPerson種類を期待していますいくつかのControllerでいくつかActionを持っている:

public class HomeController : Controller 
{ 
     public ActionResult EditPersonDetails(Person person) 
     { 
      // ... 
     } 
} 

Model-Binderはにそして責任がありますそのpersonパラメータを入力してください。デフォルトでは、ValueProvidersコレクションを参照し、(バインドされる)モデル内の各プロパティの値を尋ねることによってそれを行います。バリュー・プロバイダおよびモデルバインダーに

もっとhttp://haacked.com/archive/2011/06/30/whatrsquos-the-difference-between-a-value-provider-and-model-binder.aspx/

関連する問題