在最近的一个项目中 – 我遇到了意想不到的障碍.
具有简单公共字段的类(注意不是
属性)似乎不希望与之相配
ASP.net MVC 3.0模型绑定器.
这是设计的吗?
除了将字段更改为属性 – 这里有任何选项吗?
更新
简单字段(而不是属性)的原因是因为我正在使用MVC和Script Sharp项目之间的共享库.脚本锐利支持属性 – 但它在视图中变得混乱javascript(使用knockout.js)
所以,尽管我喜欢(只是使用属性)我在我的dto类中使用公共字段.
我想避免对同一个类有多个定义.叹
Is this by design?
是的,只有具有公共getter / setter的属性才能使用默认的模型绑定器.
besides changing the fields to properties – any options here?
这就是你应该做的,因为你应该使用视图模型.视图模型专为视图而设计.因此,将字段更改为属性是正确的方法.现在,如果您不遵循良好实践并尝试将域模型用作操作的输入/输出,那么您将必须编写一个适用于字段的自定义模型绑定器.虽然这将是很多工作.
原文链接:https://www.f2er.com/aspnet/246265.html