ASP.Net的两种开发方式

转载ASP.NET MVC4入门1—ASP.Net的两种开发方式

目前,ASP.NET中两种主流的开发方式是:ASP.NET Webform和ASP.NET MVC。

WebForm的开发方式

• 服务器端控件

• 一般处理程序+Html静态页+Ajax

• 一般处理程序+Html模板

WebForm模型

WebForm 优点

1、支持事件模型开发。得益于丰富的服务器端组件,webfrom开发可以迅速的搭建web应用

2、使用方便,入门容易

3、控件丰富

WebFrom 缺点

1、封装太强,很多底层东西让我们初学者不是很明白

2、入门容易,提升很难

3、复杂的生命周期模型学习起来并不容易

4、控制不灵活

5、ViewState处理

ASP.Net MVC的开发方式

• 2009年第一个开源项目版本发布

• 更加简洁,更加接近原始的“请求-处理-响应”

• 更加开发、更多的新的特点、社区活跃

• 不会取代WebForm

• 底层跟WebForm都是一样的。管道上不同的处理而已

MVC是微软2009对外公布的第一个开源的表示层框架,这是微软的第一个开源项目

MVC目的不是取代WebFrom开发,只是web开发的另外一种选择

为什么要学习ASP.Net MVC?

MVC架构模式诞生30年后,因为其提供的良好的松耦合、易于扩展、高可维护性等优点,重新在开发社区火起来。作为微软全新的Web网站开发框架,ASP.NET MVC提供了全新的开发模式,完美支持经典的MVC架构模式。为.NET工程师提供了完全不同的开发体验。

越来越多的公司和开发者开始加入到MVC开发模式中来,使他进入了一个高速发展的状态,而现在MVC已经变成了ASP.NET下的一种常见的开发模式,它能让你学习一种完全不同的架构,所以这是我们有理由也有必要掌握的一项开发技能。

ASP.Net MVC学习路线

要有C#、ADO.Net、html、javascript、ASP.Net WebForm的基础

MVC简介

MVC 模式两种理解:一种是表现模式,另外一种是架构模式。这里我主要将其理解为表现模式。

它将应用程序分成三个主要组件即:视图(View)控制器(Controller)模型(Model)

M:Model 主要是存储或者是处理数据的组件Model其实是实现业务逻辑层对实体类相应 数据库操作,如:

CRUD(C:Create/R:Read/U:Update/D:Delete)。它包括数据、验证规则、数据访问和业务逻辑等应用程序信息。ViewModel:视图模型

V:View 是用户接口层组件。主要是将Model中的数据展示给用户。ASPX和ASCX文件被用来处理视图的职责。

C:Controller 处理用户交互,从model中获取数据并将数据传给指定的view

表现模式(UI/Presentation Pattern)三个角色

Model:用于存储数据的组件

View:根据Model数据进行,内容展示的组件

Controller:接受并处理用户指令(操作Model),选择一个View并输出内容

MVC请求模型

MVC优点

1、很容易将复杂的应用分成M、V、C三个组件模型。通过model、view和controller有效的简化了复杂的架构,体现了很好的隔离原则

2、因为没有使用server-based forms 。所以我们程序员控 制的更加灵活,页面加干净

3、可以控制生成自定义的url。对于seo友好的url更是不在话下

4、强类型View实现,更安全、更可靠、更高效。

5、让web开发可以专注于某一层。更利于分工配合适用于大型架构开发

6、很多企业已经使用MVC作为项目开发框架,招聘明确要求熟悉MVC开发模式,我现在做的项目架构就是mvc+ef+wcf+…

MVC 代码和页面彻底分离,WebForm:codebehind技术没有完全对代码和前台页面进行分离

个人的感觉:自从接触了MVC,就再也不想拖控件了...

时间: 2024-10-05 19:40:20

ASP.Net的两种开发方式的相关文章

ASP.NET MVC4入门1—ASP.Net的两种开发方式

目前,ASP.NET中两种主流的开发方式是:ASP.NET Webform和ASP.NET MVC. WebForm的开发方式 • 服务器端控件 • 一般处理程序+Html静态页+Ajax • 一般处理程序+Html模板 WebForm模型 WebForm 优点 1.支持事件模型开发.得益于丰富的服务器端组件,webfrom开发可以迅速的搭建web应用 2.使用方便,入门容易 3.控件丰富 WebFrom 缺点 1.封装太强,很多底层东西让我们初学者不是很明白 2.入门容易,提升很难 3.复杂的

在ASP.Net中两种利用CSS实现多界面的方法

通过使页面动态加载不同CSS实现多界面(类型于csdn的blog): 方法一: <%@page language="C#"%><%@import namespace="System.Data"%><script language="c#" runat="server">public void page_load(Object obj,EventArgs e){  //创建服务器端控件.  /

asp.net 中两种&lt;%%&gt; ;@视图模式

1.ASPX(C#) 语法:  <%函数,表达式%> <%=变量%> 举例<%=a%> <%foreach(var item in List) { %> <input  type='text' name='xxx'/> <% }%> 2.Razor(cshtml) 语法:@{函数,表达式} @b变量 举例 表达式 变量 循环  相比c#aspx省去了大量尖括号 <html> <body> @for(var i

直播源码的开发方式有哪两种?

直播已经成为了一种行业,吸引力各路创业者,特别是一对一直播的出现,一对一直播源码也可以选择原生开发和混合开发,两种开发方式都能达到开发一对一直播的目的,这时候就会有人问:这两种开发方式有什么区别?开发一对一直播时应该选择哪种方式开发? 接下来小编就给大家汇总一下一对一直播源码原生开发和混合开发的区别,以及优缺点进行对比. 什么是原生开发? 原生应用开发是指在Android.IOS等移动平台上利用官方提供的开发语言.开发类库.开发工具进行App开发.我们常用的微软Word就是原生开发的应用程序,原

web.config中配置数据库(多数据)连接的两种方式

这是我的第一篇文章,既然是第一篇了,那就从最基础的只是说起--web.config中配置数据库连接. 网上有很多这方面的资料,但发现并没有一篇从头到位很清楚明了说完的,今天就把我的整理写在这里吧. 在网站开发中,数据库操作是经常要用到的操作,ASP.NET中一般做法是在web.config中配置数据库连接代码,然后在程序中调用数据库连接代码,这样做的好处就是当数据库连接代码需要改变的时候,我们只要修改web.config中的数据库连接代码即可,而不必在修改每一个页面中的数据库连接代码. 在ASP

转 web.config中配置数据库连接的两种方式

在网站开发中,数据库操作是经常要用到的操作,ASP.NET中一般做法是在web.config中配置数据库连接代码,然后在程序中调用数据库连接代码,这样做的好处就是当数据库连接代码需要改变的时候,我们只要修改web.config中的数据库连接代码即可,而不必在修改每一个页面中的数据库连接代码. 在ASP.Net中有两种配置数据库连接代码的方式,它们分别是 appSettings 和 connectionStrings .在使用 appSettings 和 connectionStrings 配置数

关于设置iOS横竖屏的两种方式(转载)

iPhone的横屏竖屏针对iOS系统版本分为两种开发方式: 一种是iOS 6之前的使用模式 一种是iOS6的新模式. 两者的区别还是蛮大的. 1:iOS6之前通常使用 shouldAutorotateToInterfaceOrientation 来单独控制某个UIViewController的方向,需要哪个viewController支持旋转,只需要重写shouldAutorotateToInterfaceOrientation方法.如下示例,设置以后,屏幕被旋转时只支持横屏转换: - (BOO

http与websocket两种协议下的跨域基于ASP.NET MVC--竹子整理

这段时间,项目涉及到移动端,这就不可避免的涉及到了跨域的问题.这是本人第一次接触跨域,有些地方的配置是有点麻烦,导致一开始的不顺. 至于websocket具体是什么意义,用途如何:请百度. 简单说就是建立一个基于互联网的实时通信. 在这里整理下这些内容,方便日后回顾. 一:介绍了WebSocket下的基于SignalR的跨域与不跨域例子 二:简单介绍了Http下的跨域问题 Ⅰ.WebSocket下的跨域 如果使用原生的方法来开发WebSocket应用,还是比较复杂的,不过好在Asp.net给我们

ASP.NET MVC 实现AJAX跨域请求的两种方法

通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据的加载,例如Google. 在ASP.NET MVC 框架里实现跨域的AJAX请求有几种方式可以实现,以下就介绍常用的两种方法. 1.     发送JSONP请求 客户端: JQuery对发送JSONP请求有很好的支持,客户端通过. ajax() 函数发送请求,其中需要制定 dataType 为“jsonp”  jsonpCallback 为指定的回调函