答案 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属性绑定字段,但我强烈建议您研究使用模型绑定。