当前位置:
首页 > 网站开发 > ASP.net 4.0教程 >
-
asp.net教程之了解MVC
了解MVC
MVC是一个设计模式,MVC能够将ASP.NET应用程序的视图、模型和控制器进行分开,开发人员能够在不同的层次中进行应用程序层次的开发,例如开发人员能够在视图中进行页面视图的开发,而在控制器中进行代码的实现。17.1.1 MVC和Web Form
在ASP.NET Web Form的开发当中,用户能够方便的使用微软提供的服务器控件进行应用程序的开发,从而提高开发效率。虽然ASP.NET Web Form提高了开发速度、维护效率和代码的复用性,但是ASP.NET现有的编程模型抛弃了传统的网页编程模型,在很多应用问题的解决上反而需要通过复杂的实现完成。在ASP.NET MVC模型中,ASP.NET MVC模型给开发人员的感觉仿佛又回到了传统的网页编程模型中(如ASP编程模型),但是ASP.NET MVC模型与传统的ASP同样是不同的编程模型,因为ASP.NET MVC模型同样是基于面向对象的思想进行应用程序的开发。
相比之下,ASP.NET MVC模型是一种思想,而不是一个框架,所以ASP.NET MVC模型与ASP.NET Web Form并不具有可比性。同样ASP.NET MVC模型也不是ASP.NET Web Form 4.0,这两个开发模型就好比一个是汽车一个是飞机,而两者都能够达到同样的目的。
ASP.NET MVC模型是另一种Web开发的实现思路,其实现的过程并不像传统的ASP.NET应用程序一样。当用户通过浏览器请求服务器中的某个页面时,其实是实现了ASP.NET MVC模型中的一个方法,而不是具体的页面,这在另一种程度上实现了URL伪静态。当用户通过浏览器请求服务器中的某一个路径时,ASP.NET MVC应用程序会拦截相应的地址并进行路由解析,通过应用程序中编程实现展现一个页面给用户,这种页面展现手法同传统的ASP.NET Web From应用程序与其他的如ASP,PHP等应用程序都不相同。
同时,随着互联网的发展,搜索引擎在Web开发中起着重要的作用,这就对页面请求的地址有了更加严格的要求。例如百度、谷歌等搜索引擎会对目录形式的页面路径和静态形式的页面路径收录的更好,而对于动态的如abc.aspx?id=1&action=add&t=3这种样式的页面路径不甚友好。
另外,所有引擎又在一定程度上决定了Web应用的热度,例如当在百度中搜索“鞋”这个关键字时,如果搜索的结果中客户的网站在搜索结果的后几页,用户通常不会进行翻页查询,相比之下用户更喜欢在搜索结果中查看前几页的内容。
ASP.NET MVC开发模型在用户进行页面请求时会进行URL拦截并通过相应的编程实现访问路径和页面的呈现,这样就能够更加方便的实现目录形式的页面路径和静态形式,对于Web应用动态的地址如abc.aspx?id=1&action=add&t=3可以以abc/action/id/add的形式呈现,这样就更加容易的被搜索引擎所搜录。
注意:ASP.NET MVC模型和ASP.NET Web Form并不具备可比性,因为ASP.NET MVC模型和ASP.NET Web Form是不同的开发模型,而ASP.NET MVC模型和ASP.NET Web Form在各自的应用上都有有点和缺点,并没有哪个开发模型比另一个模型好之说。
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式