2013-04-11 7 views
5

In MVC habe ich benutzerdefinierten Modell Binder durch eine neue Klasse erstellen, die Systen.Web.Mvc.IModelBinder umgesetzt, und es dann in Global.asax.cs registriert und innerhalb Application_Start()ModelBinders.Binders.Add(typeof(sometype), new MyModelBinder()); mitRegister 3, ein benutzerdefiniertes Modell Bindemittel in MVC 4

In MVC 4 Ich verstehe, dass Sie sollten System.Web.Http.ModelBinding.IModelBinder verwenden, um Modellbinder zu implementieren.

So habe ich zwei Fragen:

  1. Warum wir das Modell Bindemittel aus System.Web.Http.ModelBinding statt der von Systen.Web.Mvc verwenden sollen? Ich sehe nicht, dass es irgendwo als veraltet aufgeführt ist. Was ist das Problem mit dem alten?

  2. Wenn ich meinen Modellbinder aus der System.Web.Http.ModelBinding.IModelBinder implementiere, wie registriere ich ihn in meiner Anwendung, damit er tatsächlich verwendet wird?

Antwort

5

Sie können Ihr Modell Bindemittel in der gleichen Art und Weise (im Global.asax.cs) registrieren und Sie können auch die System.Web.Mvc.IModelBinder Schnittstelle verwenden.

Der System.Web.Http-Namespace ist jedoch grundsätzlich für die ASP.NET MVC-Web-API (d. H. Zum Erstellen von Webdiensten).

Verwandte Themen