定制模型活页夹
我想创建一个自定义模型活页夹。
假设有 20 个属性。我只需要手动绑定其中五个。我想像默认绑定器一样自动绑定其他 15 个属性。
这有可能吗?
I'd like to create a custom model binder.
Let's say there're 20 properties. I need manualy bind only five of them. I'd like to bind the other 15 properties automatic like the default binder does.
Is this somehow possible ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
当然,您至少可以做的就是继承
DefaultModelBinder
,重写BindModel(...)
方法并使用base.BindModel(...)< /code> 为你想要的任何东西。之后,只需为其他任何内容提供您自己的绑定逻辑即可。
Sure, the very least thing you can do is inherit
DefaultModelBinder
, override theBindModel(...)
method and usebase.BindModel(...)
for whatever you want. After that just provide your own binding logic for anything else.几天前我遇到了这样的问题,我通过填充构造函数内的默认属性解决了这个问题。通过这种方式,即使我没有“作者”字段,我也可以毫无问题地传递模型:
I had such problem few days ago and I have solved it by filling the default properties inside the constructor. In this way I just pass the model without any problem even if I don't have an "Author" field:
这里 MVC 中的模型绑定器 是创建自定义模型绑定器以及如何创建自定义模型绑定器的一个很好的示例模型绑定器在 asp.net MVC 中工作。
Here model binder in MVC is a great example for creating custom model binder and how exactly model binder works in asp.net MVC.