我来自JavaEE的背景,我正在研究Java和.Net中存在的web框架。就Java而言,我已经找到了这个Matt Raible的talk。
他对框架进行的分类之一是,它们中的一些是基于动作的,而另一些是基于组件的。前者是无状态的,专注于每个请求要执行的操作和报告的生成,而后者是有状态的,并保留其web界面组件的服务器端表示。
正如预期的那样,基于组件的web框架通常带有自己的组件或第三方组件库(除了自己的组件,JSF还有Richfaces,Icefaces,...而GWT有ExtGWT,SmartGWT,...)。为了通过基于动作的框架提供丰富的界面,开发人员必须使用JS组件库或Flex等。
由于这些类别的优点和缺点对我来说都很有意义,我想知道这种分类是否也适用于.Net框架。据我所知,ASP.Net MVC和ASP.Net Webforms都是无状态的,但Webforms有一种称为视图状态的机制,可以配置为从隐藏字段、会话等中保存和检索状态。但是,我找不到组件的服务器端表示。
那么,ASP.Net MVC和ASP.Net Webforms是基于组件还是基于操作?
发布于 2011-05-10 21:18:03
根据您的描述,在我看来Webforms将是基于组件的,而MVC将是基于操作的。
Webforms试图通过提供一种跨操作保持状态的方法并使用事件编程模型来弥合桌面编程和web编程之间的差距。
而MVC更像是一个面向web开发人员的框架,而不是桌面程序员,在那里你将专注于动作和REST动词,并直接使用JavaScript。
希望这能有所帮助!
发布于 2011-05-10 21:18:35
MVC绝对是基于Action的。
Webforms是基于组件(控件)的。
https://stackoverflow.com/questions/5950215
复制相似问题