在MVC中没有从视图到控制器获取数据

时间:2016-10-18 16:15:44

标签: c# asp.net-mvc

在MVC enter image description here

中没有从视图到控制器获取表单数据

1 个答案:

答案 0 :(得分:1)

根据发布的代码,问题是表单中没有<input>个字段。

我可能会认为这是因为使用@ Html.Label(...)代替@ Html.TextBox(...)或者将输入字段呈现为的另一个辅助方法形式。

无论您是自己编写html还是使用@Html辅助方法,了解正在发生的事情都是关键。查看源代码并查看实际呈现的HTML是非常有帮助的,以便更好地了解Razor正在做什么。

为了提交表格并获取数据,您通常需要这种模式:

查看:

...
<form action="/controller/ActionName" method="post">
    <input name="fieldName" type="text" />
    <input type="submit" value="Submit" />
</form>
...

控制器:

[HttpPost]
public IActionResult ActionName(string fieldName){
...
}

MVC将根据name属性绑定字段,但我强烈建议您研究使用模型绑定。