Asp Mvc单向模型属性,即仅来自客户端

时间:2015-02-20 09:32:30

标签: asp.net-mvc

在Asp MVC中是否有属性或类似内容表明属性应该只来自客户端,即不应该进行往返。

所以

@Html.HiddenFor(x => x.MyProp)

我在客户端上设置了这个以及其他一些属性,它是服务器,服务器有一个模型错误,所以将它全部发回。我不希望这个属性被绕过去。

我能想到的最好的就是做到这一点

<input type="hidden" name=MyPropOneWay />

然后我手动将它在控制器端插入属性

(加) 这不是为了避免模型错误,而是因为有几种方式提交表单,这是一种快捷方法。在任何情况下我都不希望这个值被翻转,否则它看起来就像它已经设置好了,但是我确实希望其他所有内容都被翻转

由于

1 个答案:

答案 0 :(得分:1)

如果您不想要从服务器呈现的值(最初或在往返之后),请使用:

<input type="hidden" name="@Html.NameFor(m => m.MyProp)" />

这将呈现一个没有值的input hidden元素,但它仍然具有正确的名称,可以在表单提交时自动绑定到您的模型。这有效地使它成为一种方式&#34;。

(MVC4中添加了NameFor助手)