1

所以我有类似这样的看法:

...
<input type="text" id="FieldOne" />
<input type="text" id="FieldTwo" />
<input type="text" id="FieldThree" />
...

模仿这个类:

public class Foo{
    public string FieldOne { get; set; }
    public string FieldTwo { get; set; }
    public string FieldThree { get; set; }
}

以及相应控制器中的一个动作:

[HttpPost]
public ActionResult View(Foo param)
{
   ...
}

当我提交表单时,Post 操作中的参数“param”会正确复制与该类匹配的所有字段的值,但其中一个字段除外(例如 FieldOne)。这些输入由 Html.TextboxFor() 生成。

这是一个特殊的问题还是我可能忘记了什么?

4

1 回答 1

6

您的输入框无效。它们应该如下所示:

// Start Form
<input type="text" id="FieldOne" name="FieldOne" />
<input type="text" id="FieldTwo" name="FieldTwo" />
<input type="text" id="FieldThree" name="FieldThree" />
// End Form

话虽如此,您是否有任何理由不使用 Html Helpers?鉴于您的模型,最好按如下方式编写表单:

// Start Form
@Html.TextBoxFor(m => m.FieldOne)
@Html.TextBoxFor(m => m.FieldTwo)
@Html.TextBoxFor(m => m.FieldThree)
// End Form
于 2012-08-15T18:47:51.877 回答