什么是asp.net mvc中的脏更新

时间:2013-12-19 16:49:23

标签: asp.net-mvc

我想知道如果我传递一个查询字符串参数,该参数与窗体上的控件名称相同,从视图到控制器会发生什么?

控制器将从中选择值: A.来自控制() B.来自查询字符串(?firstname = somename)

提前致谢

1 个答案:

答案 0 :(得分:0)

我假设您想要向控制器操作方法参数提交值。

这里有两件事需要考虑: 1)浏览器提交给服务器的名称/值对是什么? 2)从提交的名称/值对集合(其中同名可能出现两次,但有两个不同的值),控制器将使用哪个值来填充参数?

关注#1,浏览器会将所有表单值提交给服务器。将提交两个名称值对。可能是查询字符串中的一个,以及POSTed数据中的一个。

关注#2,服务器在填充操作方法的参数时将使用哪个值...它可能会使用传递给模型绑定器的名称/值集合中遇到的第一个值。简短的回答是,您无法分辨将使用哪一个。

顺便说一句,您可以将操作方法​​参数设置为receive both values ...但是,我假设这不是您之后的功能。

我建议在查询字符串中使用不同的名称,以避免歧义。