gpt4 book ai didi

asp.net-mvc - 我应该使用自定义模型绑定(bind)器将 View 模型绑定(bind)到实体吗?

转载 作者:行者123 更新时间:2023-12-03 11:00:00 24 4
gpt4 key购买 nike

只是更多地使用自定义模型绑定(bind)器的一些想法。我目前仍在使用 IMapper 接口(interface)来执行此操作,但想知道自定义绑定(bind)器的部分目的是否是将 View 模型或输入模型映射到业务实体?如果我使用 MVC 自定义活页夹,我可以看到可能会有一些限制。在 MVC 中使用自定义绑定(bind)器有什么好处?我的应用会获得更好的性能吗?

最佳答案

简短的回答是 不,你不应该
ModelBinder本身就是 ASP.NET MVC 基础结构的一部分。如果您想看看 ASP.NET MVC 管道 (PDF)你会看到它的工作是
将已发布的 Web 表单数据(基本上是字符串)或查询字符串从 URL 转换为特定类的实例。
ASP.NET MVC 框架有一个 DefaultModelBinder
适用于 99% 的情况。自定义模型绑定(bind)器可用于标准数据转换失败的情况,例如测绘$ 1,234.56从文本框到 decimal 1234.56 的值

此外ModelBinder实现 IModelBinder与单个 BindModel() 的接口(interface)方法。此方法需要难以“手工制作”的参数来使用它们,并且与您的场景完全不相关。

你真正要找的是
- View 模型和业务对象之间的自定义对象映射,您手动将一个对象属性值分配给另一个对象
- 或利用库/框架,例如 AutomapperValueInjecter它可以解决您远离对象映射的麻烦
- 或两者兼而有之

关于asp.net-mvc - 我应该使用自定义模型绑定(bind)器将 View 模型绑定(bind)到实体吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16734271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com