.NET Model Binders
Ich habe versucht, einen benutzerdefinierten Modellordner in meinem ASP.NET MVC 4-Projekt zu erstellen. Aber ich bleibe bei IModelBinder-Iterfaces. Es gibtdrei IModelBinder-Schnittstellen können VS finden. In folgenden Namensräumen.
using System.Web.Http.ModelBinding;
using System.Web.Mvc;
using System.Web.ModelBinding;
bool BindModel(HttpActionContext actionContext, ModelBindingContext bindingContext)
object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext);
bool BindModel(ModelBindingExecutionContext modelBindingExecutionContext, ModelBindingContext bindingContext);
Alle verwandten Klassen mögenModelBindingContext, ModelMetadata und andere werden auch dupliziert. Ich und mein Freund können nicht herausfinden, was der Zweck einer solchen schrecklichen Code-Vervielfältigung ist. Warum haben Microsoft-Entwickler keine allgemeinen Klassen in eine gemeinsam genutzte Assembly extrahiert? Wie ich verstehe, wird eine Schnittstelle in MVC, eine in Web-API verwendet und was ist der Zweck der dritten Version? Sind diese Schnittstellen unabhängig oder irgendwie miteinander verbunden?