我在MVC工作。我有一个View say view1,它包含一个HTML表单,如下所示:
<form action='/Exercise/Exercise4_SubmitForm' method="post">
Name: <input type="text" name="name" /><br />
Emp: <input type="text" name="id" /><br />
DateofBirth: <input type="text" name="Dateofbirth" /><br />
Age: <input type="text" name="age" /><br />
.
so on
.
.
<input type="submit" name="submit" value="Save" />
</form>
我有17个文本框,我之前只提到了4个。
现在mvc动作方法必须
public ActionResult Exercise4(string name, string code, string age, string dateofBirth,...)
{
//my code here
}
我的问题是 有没有办法我不必在上面给出的mvc动作方法中指定每个17个参数。因为下次有可能有70个参数然后指定每个参数是非常繁琐的工作。 “我不想使用HTML Helpers。”
请帮助我!!!
答案 0 :(得分:2)
创建模型
public class YourModel
{
public string name {get;set;}
public string code {get;set;}
public string age {get;set;}
public string date {get;set;}
.
.
.
}
然后,在视图顶部放置
@model Namespace.YourModel
之后用
切换所有输入@Html.EditorFor(m => m.name)
@Html.EditorFor(m => m.code)
@Html.EditorFor(m => m.age)
@Html.EditorFor(m => m.date)
如果您不确定如何执行此最后一部分,请创建一个新视图并选中创建强类型视图,然后从组合框中选择您的模型。 根据您的需要选择脚手架模板。这是一个插入,编辑,删除,列表....
接收帖子的操作将接收您的模型
public ActionResult Exercise4(YourModel model)
{
//my code here
}
答案 1 :(得分:0)
如果我是你,我会首先考虑:http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-5
事实是你的表单中的字段必须是模型的一部分(你正在使用MVC吗?)然后帖子将包含你的模型。