• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > 增加asp.net应用程序性能的20种方法(简单有效)

增加asp.net应用程序性能的20种方法(简单有效)

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了asp.net,北京asp.net编程,免费asp.net空间,csdn asp.net,asp net培训等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

1.禁用session
假如您用不到session会话跟踪请务必禁用它。您可以在每个asp.net页面中设置如下:
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1"

EnableSessionState="false" %>

当然您可以在web.config应用程序配置设置中设计<sessionState>mode的值为Off.

2.输出缓冲设置
这个方法对你的应用很有帮助.
asp.net应用程序基本上在服务器端批量生成数据,这时必须设置Response.Flush清空缓冲区。这样会减轻服务器端的缓冲区压力。

<%response.buffer=true%>
替换成
<%response.flush=true%>

 

3.避免服务器端验证.
用客户端验证代替服务器端验证.服务器端数据验证将会大量消耗您的服务器

上的资源,并且会代来大量的页面数据回传.

 

4.尽量多使用Repater控件,而不要使用DataList, DataGrid, 和 DataView 控件

Asp.net是一个非常好的平台,不幸的是,有很多控件会大量生成html代码,这

样务必会造成性能上的问题.Asp.net repeater 控件非常好用。使用它你将会

额外多写一些代码,但是将来您会发现它带来的好处远比多写代码带来的麻烦。

 

5.在执行大动作操作时请使用 HttpResponse.IsClientConnected
if (Response.IsClientConnected)
        {
            // If still connected, redirect
            // to another page.
            Response.Redirect("Page2CS.aspx", false);
        }
Response.Redirect有什么错误吗,请继续答案在下面

 

6.使用HTTPServerUtility.Transfer去替换Response.Redirect.
Redirect(重定向)非常麻烦,它仅用于用于从当前物理服务器跳转到其它服务

器.如果只是在本服务器内页面跳转请使用transfer(转发),这样会减少很多没

有必要的客户端请求.

 

7.当使用服务器端验证时请务必使用Page.IsValid检查页面是否能过验证
由于您使用了验证控件,你可能认为asp.net会为处理以下的所有事情,是这样吗?

错!当有无效数据传到服务器端时IsVlid属性被改为fasle.在继续处理您的表单之前请检查Page.IsValid属性

 

8.部署应用程序请使用Release版本
在部署应用程序时请确定您的应用程序应是Release版本而不是Debug版本.假如您认为这无关仅要,你就错了。

如果使用debug模板极容易发生请求超时。部署成Release版本,你将会发现速度有很大的提升.

 

9.关闭 Tracing(追踪)
Tracing是非常可怕的,你有没有忘记关闭它.假如没用,请确定编辑web.config并且关闭它.它将占用大量您的程序资源
<configuration>
 <system.web>
 <trace enabled="false" pageOutput="false" />
 <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true"/>
 <compilation debug="false" />
 </system.web>
 </configuration>

 

10.Page.IsPostBack要经常去使用
请确定不要执行太多回传代码,我已经记不清有多少开发者忘记使用检查IsPostBack属性.我在平常开发中会经常使用该属性检查.

 

11.避免使用异常
避免抛出异常和处理异常。除非在万不得已情况下使用异常处理。

异常是相当的浪费服务器端资源并会大大降低效率.尽量不使用异常处理。

 

12.设置缓存(Caching)
使用页面快速设置页页Caching和使用ASP.net缓冲API!

有很多东西要学,这个可不是你想像中那么简单.这个有很多策略要采用.什么时候使用缓冲?你使用缓存了吗?

 

13.设置每一次请求缓存
使用HTTPContect.Items仅要添加一个页面用来设置每一个请求缓存.

 

14.StringBuilder类的使用
StringBuilder.Append 的速要比String + String速度快的多。

假如您连接的字符串较上可以不使用,当连接次数大于3次上建议使用StringBuilder.Append方法,当然也可以使用String.Concat

 

15.关闭ViewState
假如你没有使用表单数据回传,那么关闭viewsate。控件回自动打开viewstate这样回减慢你应用程序速度.

public ShowOrdersTablePage()
{
    this.Init += new EventHandler(Page_Init);
}

private void Page_Init(object sender, System.EventArgs e)
{
    this.EnableViewState = false;
}

 

16.使用分页
.net应用程序分页有利用应用程序效率.每次尽量显示小部分数据,这样会加快页面显示速度。请小心使用混合缓存,请不要设置所有数据在缓存区中。

17.当更新应用程序时使用AppOffline.htm
我非常讨厌asp.net默认错误消息.我是那么的开心假如我再也看不到那些错误消息.确定您的用户也不要看到它.使用AppOffline.htm去替代它。

 

18.控件使用ControlState而不使用ViewState

 

19.使用finally方法回收资源
假如你在应用中大量使用数据库连接和访问文件,请确定在用完后关闭它们.

finally块是程序中最后被执行,因此在这里面的代码会确宝一定会被执行,关闭代码一定要在这个方法块中执行

20.请严格按照以上方法执行

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Asp.net SignalR 应用并实现群聊功能 开源代码
  • asp.net动态更新
  • asp.net利用母版制作页脚效果
  • Asp.Net服务器发送HTTP标头后无法设置内容类型的问题解决
  • 使用asp.net mvc,boostrap及knockout.js开发微信自定义菜单编辑工具(推荐)
  • 详解ASP.NET MVC 常用扩展点:过滤器、模型绑定
  • ASP.NET Core发送邮件的方法
  • 在ASP.NET Core 中发送邮件的实现方法(必看篇)
  • ASP.NET MVC从视图传参到控制器的几种形式
  • Asp.net core WebApi 使用Swagger生成帮助页实例

相关文章

  • 2017-05-11Global.cs中自动获取未处理的异常
  • 2018-08-20MVC 5限制所有HTTP请求必须是POST方式
  • 2017-05-11aspx实现的 jquery ui 的 flexgrid demo
  • 2017-05-11Visual Studio 2017正式版发布 Mac版新功能特性有哪些
  • 2017-05-11VB.NET调用MySQL存储过程并获得返回值的方法
  • 2017-05-11asp.net 过滤图片标签的正则
  • 2017-05-11几种判断asp.net中session过期方法的比较
  • 2018-08-20.Net Core配置与自动更新的实现方法
  • 2017-05-11asp.net MVC利用ActionFilterAttribute过滤关键字的方法
  • 2017-05-11ASP.NET中使用Application对象实现简单在线人数统计功能

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ASP.NET 6种常用数据库的连接方法
    • 详解ASP.NET Core 之 Identity 入门(三)
    • ashx中使用session的方法(获取session值)
    • .net 日志系统解析
    • Repeater全选删除和分页实现思路及代码
    • 在Asp.net用C#建立动态Excel
    • .net数据库连接池配置技巧(默认值)
    • 登录时记住用户名和密码及cookie案例应用
    • asp.net 操作cookie的简单实例
    • ASP.NET实现URL映射的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有