当前位置:主页 > 科技论文 > 计算机论文 >

七天学会ASP.NET MVC (一)

发布时间:2016-05-23 18:05

  本文关键词:MVC,由笔耕文化传播整理发布。


Day1

  系列文章

七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC

七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递

七天学会ASP.NET MVC (三)——ASP.Net MVC 数据处理

七天学会ASP.NET MVC (四)——用户授权认证问题

七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理

 七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL

七天学会ASP.NET MVC(七)——创建单页应用

 

ASP.NET vs MVC vs WebForms

许多ASP.NET开发人员开始接触MVC认为MVC与ASP.NET完全没有关系,是一个全新的Web开发,事实上ASP.NET是创建WEB应用的框架而MVC是能够用更好的方法来组织并管理代码的一种更高级架构体系,所以可以称之为ASP.NET MVC

我们可将原来的ASP.NET称为 ASP.NET Webforms,新的MVC 称为ASP.NET MVC.

ASP.NET Web Form

ASP.NET 在过去的十二年里,已经服务并成功实现Web 应用的开发。我们首先了解一下为什么ASP.NET能够如此流行,并成功应用。

微软编程语言从VB开始就能够成为流行并广泛应用,都源于其提供的强大的Visual studio能够进行可视化的编程,实现快速开发。

使用VS时,开发人员能够通过拖拽UI元素,并在后台自动生成这些界面的代码。称为后台代码。在后台代码中开发人员可以添加操作这些UI元素的逻辑代码。

因此微软的可视化RAD架构体系有两方面组成,一方面是UI,一方面是后台代码。因此ASP.NET Web 窗体,包含ASPX和ASPX.CS,WPF包含XAML/XAML.CS等。

ASP.NET Web Form存在的问题 我们不得不考虑的问题是,既然ASP.NET Web Form 如此成功且具有优势,为什么微软还要推出ASP.NET MVC?主要是因为ASP.NET Webform的性能问题。在Web应用程序中从两方面来定义性能: 1. 响应时间: 服务器响应请求的耗时 2. 带宽消耗: 同时可传输多少数据。 响应时间 我们可以理解为什么ASP.NET Webform比较慢,如图我们做了一些小的加载测试。分别使用ASP.Net MVC和ASP.Net Webform,发现ASP.Net MVC的响应时间比Webform快了两倍。

clip_image003

接下来我们在思考一个问题为什么ASP.NET MVC的性能更好?看看下面这个示例,简单的UI代码和UI的后台代码。 假如一个textbox的ASPX页面: 对应的UI后台代码:

Page_Load(object sender, EventArgs e) 2: { 3: TextBox1.Text = "Make it simple"; 4: TextBox1.BackColor = Color.Aqua; 5: }

运行结果:

clip_image004

如果查看HTML输出,则会显示如下代码: 我们再来思考上面提到的问题 1. 这种HTML生成方式是否很有效?我们是否为了获取如此简单的HTML而长时间的消耗服务器 2. 开发人员是否可以直接编写HTML?很难实现吗?

 

clip_image005

通过分析我们可以得知,每一次请求都有转换逻辑,运行并转换服务器控件为HTML输出。如果我们的页面使用表格,树形控件等复杂控件,转换就会变得很糟糕且非常复杂。HTML输出也是非常复杂的。由于这些不必要的转换从而增加了响应时间。该问题的解决方案就是摆脱后台代码,写成纯HTML代码。 带宽消耗 ASP.NET开发人员都非常熟悉Viewstates,因为它能够自动保存post返回的状态,减少开发时间。但是这种开发时间的减少会带来巨大的消耗,Viewstate增加了页面的大小。在做的加载测试中,,与MVC 对比,我们发现Viewstate增加了两倍的页面存储。以下是测试结果:

 

clip_image006

页面尺寸的增加是因为viewstate产生了额外的字节。下图就是Viewstate的截图。许多人可能会不同意此观点,但是众所周知,开发人员是如何工作的,如果有选择,他们肯定会采取别的选择。

 

clip_image008

  • HTML 消耗
  • 现在因为我们都是后台代码和ASP.NET web server控件的努力,我们对于怎样得到HTML以及如何使他们更有效没有更好的办法。如下面展示的ASPX 代码,你能确定会生成什么样的HTML代码吗?


  •   本文关键词:MVC,由笔耕文化传播整理发布。



    本文编号:48818

  • 资料下载
    论文发表

    本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/48818.html

    上一篇:李林峰的园子  
    下一篇:Thinking In Jdon

    Copyright(c)文论论文网All Rights Reserved | 网站地图 |

    版权申明:资料由用户9a27c***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com