回答1:由于ASP.NETMVC的特质,
服务器端的表单
控件不再被提倡使用,例如文本框,不再使用asp:TextBox,而是使用传统的input,或直接让Html.TextBox生成。甚并不是说不能用任何服务器端控件,例如,为了实现母版,ContentPlaceHolder还是必须要使用的完全控制最终要呈现的html没有了ViewState、Postback以及服务器端form等,webform的服务器控件大多数都无法在asp.netmvc项目中使用。在MVC中可以使用服务器控件,但是微软之所以提出MVC框架,是因为传统的.NetWeb网站的冗余代码太多,导致了网站的响应速度很慢,尤其是大型的网站,儿导致冗余代码的根本原因之一,
也是最主要的原因是因为大量的使用了VS自带的服务器控件,所以微软提出了MVC框架,使前台页面的代码更加简介,增快系统的响应速度,但是MVC中还是可以使用服务器控件,因为有一种开发模式是Web和MVC的混开发模式,目的是希望综合两者的优点与一起,但是还是不适合开发大型的系统,如果你在MVC中使用了服务器控件就违背了ASP.NetMVC最初发布的初衷...所以很多人说最好不要用,这就是为什么了,希望可以帮到你...加油!!!先说服务器控件,把大部分属性序列化成ViewState,后台可以很方便的进行交互,但是当你页面里服务器控件多,或者有一个GridView的时候,ViewState隐藏表单的值会惊人的长.而服务器控件的各个事件,也是通过提交表单的方式将消息传递到服务器,再由服务器响应.这样带来的纯粹只是开发上的便利,运行效率是无法谈起的.
就我个人感觉,MVC其实是想把ASP.NET的网站从传统冗余的ViewState里解放出来.在MVC里通过最传统的POST或者GET传值,这样不仅利于我们控制,而且生成的页面简洁的多.
这些都是一些网上的说法和我自己的经验,具体用不用还是看你.因为就算用服务器控件,也是可以编译通过的.
至于呈现数据的话,我感觉这个不算什么问题啊.可能你没接触过那些解释型语言,在不用服务器控件的环境下,若得到单个数据,用<%%>标签输出即可若得到一个集合数据,进行遍历就可以循环展示.
你可以试用一下,静态页绑定方法<%= %>这个,或者。你吧后台分清楚,因为ASP和ASP.NET绑定方法不同,ASP可以页面级处理。但是ASP.NET你就只能在后台的CS里面添加了,或者你做一个类吧方法做进去。现在的方法只能支持这些,不然你可以试用一下2008看有没有什么新的方法,我的方法仅限于2005,希望可以帮到你
评论列表(0条)