初次体验ASPNET的MVC框架
一看到MVC,估计大家都不会陌生,这是java中经典的项目框架结构,尤其是在java web开发方面,mvc方面的框架都已经非常的成熟。一直以来开发经典aspnet页面时,都很羡慕java在web开发方面的灵活,jsp页面没有臃肿的viewstate和复杂的页面周期,开发人员能够精确的控制程序的流程,当然这种控制会增加一些代码的工作量。
这回dotnet也有了自己的mvc框架,起初我怀疑是不是网络上常见的三层架构改编而成,或者说是新的代码自动生成框架。安装了使用之后,发现aspnet mvc框架跟经典的aspnet框架有着很大的区别,可以说是两种不同的开发方式。并且从aspnet mvc的实现过程来看,与java的mvc框架有着明显的相似之处。如果习惯了aspnet原有开发方式的人员,估计会难以接受aspnet mvc框架的开发方式。因为在该框架下,几乎很少用到了viewstate来保存页面状态,更多的是通过post,form action等方式来维持状态。而aspnet页面那种便捷的事件驱动开发方式也被摒弃了,在界面上点击控件看不到到事件窗口,试图在代码里面添加事件也没有智能感知出现,估计是因为事件会影响到form的action,因为mvc里的controller的动作是通过action实现的。还有一点明显变化的是,访问地址的改变。地址的访问不再是那种固定的访问某一个页面的全称,而是首先访问控制器,再通过控制器去展现页面内容,估计用过mvc的都能理解。访问地址的方式,是引入了地址映射这种关联方式,这种功能在2.0中亦可实现,将test.aspx?id=34这样的网址通过test/34这种形式访问,跟java里的serverlet访问方式类似。
明显的改变,并不意味着原有aspnet的功能都用不上或者会给编程带来麻烦,但作为微软的产品,在操作方面肯定会即兼容aspnet原有功能又能让你在使用新框架时得心应手。实际开发的时候,配合vs2008以及框架的自带的一些代码自动生成功能,更重要是配合LInq一起使用,开发效率应该不逊于原有aspnet框架。
刚接触不久,还未能详尽了解其工作原理,将继续学习,欢迎交流。
附:aspnet mvc的网址 http://www.asp.net/mvc/
这回dotnet也有了自己的mvc框架,起初我怀疑是不是网络上常见的三层架构改编而成,或者说是新的代码自动生成框架。安装了使用之后,发现aspnet mvc框架跟经典的aspnet框架有着很大的区别,可以说是两种不同的开发方式。并且从aspnet mvc的实现过程来看,与java的mvc框架有着明显的相似之处。如果习惯了aspnet原有开发方式的人员,估计会难以接受aspnet mvc框架的开发方式。因为在该框架下,几乎很少用到了viewstate来保存页面状态,更多的是通过post,form action等方式来维持状态。而aspnet页面那种便捷的事件驱动开发方式也被摒弃了,在界面上点击控件看不到到事件窗口,试图在代码里面添加事件也没有智能感知出现,估计是因为事件会影响到form的action,因为mvc里的controller的动作是通过action实现的。还有一点明显变化的是,访问地址的改变。地址的访问不再是那种固定的访问某一个页面的全称,而是首先访问控制器,再通过控制器去展现页面内容,估计用过mvc的都能理解。访问地址的方式,是引入了地址映射这种关联方式,这种功能在2.0中亦可实现,将test.aspx?id=34这样的网址通过test/34这种形式访问,跟java里的serverlet访问方式类似。
明显的改变,并不意味着原有aspnet的功能都用不上或者会给编程带来麻烦,但作为微软的产品,在操作方面肯定会即兼容aspnet原有功能又能让你在使用新框架时得心应手。实际开发的时候,配合vs2008以及框架的自带的一些代码自动生成功能,更重要是配合LInq一起使用,开发效率应该不逊于原有aspnet框架。
刚接触不久,还未能详尽了解其工作原理,将继续学习,欢迎交流。
附:aspnet mvc的网址 http://www.asp.net/mvc/