6

在 MVC 3 中,我通过创建一个已实现的新类来创建自定义模型绑定器Systen.Web.Mvc.IModelBinder,然后在内部Global.asax.cs和内部Application_Start()使用ModelBinders.Binders.Add(typeof(sometype), new MyModelBinder());

在 MVC 4 中,我知道您应该用来System.Web.Http.ModelBinding.IModelBinder实现模型绑定器。

所以我有两个问题:

  1. 为什么我们应该使用模型绑定器 fromSystem.Web.Http.ModelBinding而不是 from Systen.Web.Mvc?我没有看到它在任何地方都被列为弃用,那么旧的问题是什么?

  2. 如果我从 中实现我的模型绑定器System.Web.Http.ModelBinding.IModelBinder,我如何在我的应用程序中注册它以便实际使用它?

4

1 回答 1

5

您可以以相同的方式注册您的模型绑定器(在 Global.asax.cs 中),您也可以使用该System.Web.Mvc.IModelBinder界面。

但是,System.Web.Http 命名空间基本上是用于 ASP.NET MVC Web API(即用于构建 Web 服务)。

于 2013-04-11T13:04:00.173 回答