ASP.NET编程:Asp.net MVC中提交汇合工具,完成Model...
有专家说:java不是跨平台,java就是平台,这很好的定义了java的特点。有了java,你只需要等待java平台在新平台上移植。这还不错吧!只是,java不是一个平台,而是多个平台。你需要在这个java平台移植到另一个java平台。Asp.netMVC中的Model主动绑定功效,便利了我们关于request中的数据的处置,从客户真个哀求数据,主动地以Action办法参数的情势出现。偶然候我们的Action办法中想要吸收数组范例的参数,怎样写表单,使得Model可以主动绑定到数组参数上呢?看上面的代码,Action办法UpdateStudents就必要IEnumerable<Student>范例的参数,用来批量更新Student数据。
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.Id)</p><p>name:@Html.TextBoxFor(m=>m.Name)</p><p>age:@Html.TextBoxFor(m=>m.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=".Id"type="text"value="1"/></p><p>name:<inputname=".Name"type="text"value="AndrewPeters"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name=".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=".Id"type="text"value="2"/></p><p>name:<inputname=".Name"type="text"value="BriceLambson"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name=".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=".Id"type="text"value="3"/></p><p>name:<inputname=".Name"type="text"value="RowanMiller"/></p><p>age:<inputdata-val="true"data-val-number="ThefieldAgemustbeanumber."data-val-required="TheAgefieldisrequired."name=".Age"type="text"value="56"/></p></div><inputtype="submit"/></form>能够看到关于汇合数据的绑定,MVC中有本人的界说划定规矩,一切的表单项都是.Field的情势。
下面是更新的例子,假如是批量增加数据,不克不及利用HtmlHelper,只需是提交的表单项依照这个划定规矩来定名,MVC也可以主动绑定成汇合工具。
捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。 Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。 ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。 是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。 Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。 ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。 但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。
页:
[1]