.Net mvc粘合剂

时间:2009-02-10 22:11:58

标签: asp.net-mvc modelbinders

我对Microsofts mvc框架中的模型绑定器存在分歧。我的域模型有一个基类,它具有只读属性和类型为guid的id属性。但因为它只读取绑定器无法设置属性的值。我完全搞砸了,还是有人可以解决我的问题?

编辑:对不起,因为总有一些我忘记提及的附加信息,我希望绑定器绑定id属性的唯一时间是它是另一个模型对象的相关对象。就像在这种情况下,当我为帖子选择了一个类别时,我只想要ORM的id。

2 个答案:

答案 0 :(得分:1)

粘合剂不能设置只读值 - 它们也不应该!常见的情况是您已创建模型,并返回ID。

下次检索该对象时,会将ID传递给构造函数以便于检索对象。在任何时候你都不需要双向绑定该属性。

答案 1 :(得分:1)

我不同意答案, - 为什么活页夹不能设置只读或私有属性?这引入了限制并防止对象不可变。 (你当然可以实现一个自己的模型绑定器)

我不是粘合剂或反射方面的专家,但我猜测标准实现使用反射和反射并不限制不设置私有属性。