说,我有一个动作
public ActionResult Details(MyModel details)
在这种情况下,细节将始终为null,因为名称与方法名称匹配。将其重命名为其他东西 - 它工作正常。 对我来说,这些是两个独立的东西 - 一个是网址,另一个是POST数据。 有谁看过MS解释这个?
答案 0 :(得分:6)
它不是null,因为该操作被称为Details
。它为null,因为MyModel
类中有一个名为Details
的属性。因此,默认模型绑定器不知道您是否要直接指定Details
或MyModel
的{{1}}属性。因此,要么重命名动作参数名称,要么重命名模型类中的Details属性的名称。
答案 1 :(得分:0)
它与MVC的约定优于配置有关。 这会产生一些限制。