首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >IModelBinder与IModelBinderProvider asp.net MVC3的区别

IModelBinder与IModelBinderProvider asp.net MVC3的区别
EN

Stack Overflow用户
提问于 2012-12-30 17:25:32
回答 2查看 1.1K关注 0票数 2

问题很简单:我应该什么时候实现IModelBinder,什么时候实现IModelBinderProvider

提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2012-12-30 23:23:01

IModelBinderProvider是一个提供IModelBinder实现的工厂。对于一个类型总是使用相同的模型绑定器的简单情况,您只需要使用IModelBinder。对于需要动态确定要使用哪个模型绑定器的更复杂的情况,您可以实现IModelBinderProvider。

Jimmy BogardBrad Wilson比我解释得更好。

票数 2
EN

Stack Overflow用户

发布于 2016-01-18 15:34:00

在使用IModelBinderProvider时,仍然需要对绑定器类使用IModelBinder

代码语言:javascript
代码运行次数:0
运行
复制
  We use IModelBinderProvider to help us don't need to register manual like
    ModelBinders.Binders.Add(typeof(HomePageModels1), new HomeCustomBinder1());
    ModelBinders.Binders.Add(typeof(HomePageModels2), new HomeCustomBinder2());

...

我们只需要添加1行

代码语言:javascript
代码运行次数:0
运行
复制
ModelBinderProviders.BinderProviders.Add(new YourModelBinderProvider());

when控制器有参数。它将自动调用方法

代码语言:javascript
代码运行次数:0
运行
复制
public IModelBinder GetBinder(Type modelType)

为您自定义模型

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14089662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档