现在,这不是一个关于哪种技术更好的问题,因为它们都有各自相关的用途和场景。
我的问题是关于两者的语法。它们的语法有什么不同?
我的问题是关于两者的语法。它们的语法有什么不同?
ASP.NET MVC(顾名思义)仍然是ASP.NET。它只是添加了一个额外的层,实现了模型-视图-控制器方法。视图只是普通的ASPX页面,控制器只是普通的继承自Controller类的C#/VB.NET类。唯一的主要区别(当然除了整个MVC思想之外)是默认情况下不使用代码后台文件。不过您仍然可以自己创建它们。
语法基本相同。您仍然编写C#或VB代码。唯一的区别是没有代码后台,因为它被分离到控制器中。您的视图可能包含一些逻辑,以ASP标记的形式存在(<%= %>)。
MVC和Webforms使用不同的HttpHandlers来向开发人员公开编程功能以处理请求。
MVC可以更好地控制页面上的html(因为您几乎将全部编写),而Webforms(又名ASP.Net)会自动呈现Html到页面上。
两者使用相同的语法,但在MVC中您无法访问服务器控件(例如<asp:DataGrid />
),这可以节省您使用数据绑定等功能的时间,但代价是具有类似呕吐物的html。
您还会发现,在处理事件时,您不需要在页面生命周期事件中添加特殊情况(因为在MVC中不存在此类事件),以防止触发某些操作。
没有更好的选择,两者都有其优点和缺点。这取决于您的需求,以及您希望如何开发此应用程序。两者都有其优势和劣势。