在ASP.NET MVC自定义绑定与命名的约定
-
20-09-2019 - |
题
我有一个视图,我用的命名,约定在我的文本字段,以指示如何处置一旦回发到我的控制器中的内容来完成。
的格式是类似于:
<input type="text" name="RegistrationLine#ID" />
更新
<input type="text" name="CreateRegistrationLine#LineNumber" />
用于创建
现在,因为我使用这个命名,约定,定期模型的结合是不可能的。但我一直在阅读了关于这个问题的了一下,没有找到一点指示,这将有可能写一个自定义的模型绑定的,这应该能够帮助分析并结合这些表单元素和正确实例化对象。
请阅读:绑定formValue到的不同属性名,ASP.NET MVC
这是一个有点类似于我在做什么,除了我有有在我试图绑定到formelement名附加信息的额外的复杂性。
我是大错特错吗?如果没有,可以任你掉落的几行代码,以显示你将如何关闭启动这个模型的粘结剂..
如果这是一个很不错的办法是什么我真的想实现,我很想听到更好的方法的建议。不过请注意什么,我希望能够做的是回来后都更新,并一气呵成造成的。
解决方案
我有点儿与@jfar和@omar一致。我不认为一个自定义模型粘合剂是你想在这种情况下。
您可以通过一个复杂的类型,你的看法,并简单地用句号像@jfar提及。
id="Model.Person.Name.FirstName"
将愉快地结合具有一个类在它称为名称,其具有所谓的姓属性的对象名为Person。
现在,如果你想要做的对数据的一些特殊的检查,你可以实现一个局部类会做的验证等,并填充的ModelState错误。
public partial class Name
{
public void Validate(){ }
public int CreateRegistrationLine(){ }
public bool DoSpecialActions(){ }
}
这是一个有点不清楚你的特别行动这样做我上面的例子可能不是你想要的。
不隶属于 StackOverflow