|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
有专家说:java不是跨平台,java就是平台,这很好的定义了java的特点。有了java,你只需要等待java平台在新平台上移植。这还不错吧!只是,java不是一个平台,而是多个平台。你需要在这个java平台移植到另一个java平台。Asp.netMVC中的Model主动绑定功效,便利了我们关于request中的数据的处置,从客户真个哀求数据,主动地以Action办法参数的情势出现。偶然候我们的Action办法中想要吸收数组范例的参数,怎样写表单,使得Model可以主动绑定到数组参数上呢?
看上面的代码,Action办法UpdateStudents就必要IEnumerable<Student>范例的参数,用来批量更新Student数据。- [HttpPost]publicActionResultUpdateStudents(IEnumerable<Student>students){//....save}
复制代码 下面是一个十分典范的使用场景,怎样为表单中的field定名,可以使得提交表单的时分,modelbind可以主动创立好IEnumerable<Student>范例的students呢?
上面就是在批量更新场景下的表单View代码- @using(Html.BeginForm()){for(vari=0;i<Model.Count();i++){<divstyle="border-bottom:1pxsolidred;"><p>id:@Html.TextBoxFor(m=>m[i].Id)</p><p>name:@Html.TextBoxFor(m=>m[i].Name)</p><p>age:@Html.TextBoxFor(m=>m[i].Age)</p></div>}<inputtype="submit"/>}
复制代码 再来看看天生html的表单的实践效果- <formaction="/home/updatestudents"method="post"><divstyle="border-bottom:1pxsolidred;"><p>id:<inputdata-val="true"data-val-number="ThefieldIdmustbeanumber."data-val-required="TheIdfieldisrequired."name="[0].Id"type="text"value="1"/></p><p>name:<inputname="[0].Name"type="text"value="AndrewPeters"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name="[0].Age"type="text"value="18"/></p></div><divstyle="border-bottom:1pxsolidred;"><p>id:<inputdata-val="true"data-val-number="ThefieldIdmustbeanumber."data-val-required="TheIdfieldisrequired."name="[1].Id"type="text"value="2"/></p><p>name:<inputname="[1].Name"type="text"value="BriceLambson"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name="[1].Age"type="text"value="29"/></p></div><divstyle="border-bottom:1pxsolidred;"><p>id:<inputdata-val="true"data-val-number="ThefieldIdmustbeanumber."data-val-required="TheIdfieldisrequired."name="[2].Id"type="text"value="3"/></p><p>name:<inputname="[2].Name"type="text"value="RowanMiller"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name="[2].Age"type="text"value="56"/></p></div><inputtype="submit"/></form>
复制代码 能够看到关于汇合数据的绑定,MVC中有本人的界说划定规矩,一切的表单项都是[number].Field的情势。
下面是更新的例子,假如是批量增加数据,不克不及利用HtmlHelper,只需是提交的表单项依照这个划定规矩来定名,MVC也可以主动绑定成汇合工具。
捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。 |
|