ASP.NET效能提高的技巧
.使用ISPOSTBACK
.關閉不必要的SESSION狀態
<%@page enablesessionstate="false"%>
注意使用SERVER CONTROL
.不必要時可以不使用SERVER CONTROL
.不必要時可以關閉VIEWSTATE
.<ASP:DATAGRID
ENABLEVIEWSTATE="FALSE" RUNAT="SERVER"/>
禁用整個頁面的:<%@PAGE ENABLEVIEWSTATE="FALSE"%>
每個SERVER CONTROL都有VIEWSTATE這個屬性,
.不要用EXCEPTION控製程序流程
try{
result=100/num;
}
catch(Exception e)
{
}
用if 來改寫:
if (num=0 )
...
.禁用VB和JSCRIP動態資料類型
寫上這個標誌:.<%@ Page Language="VB" strict="true"%>
因為ASP.NET相容ASP
.使用預存程序資料訪問
.唯讀資料訪問不要使用DATASET
.使用SqlDataReader代替DataSet
.SqlDataReader是read0-only,forward-only
.關閉ASP.NET的Debug模式
.使用ASP.NET Output Cache緩衝資料
.頁面緩衝
緩衝參數的組合,多個參數會呈幾何級增加.如果下面的VaryByParam="none"
.在頁面頂部加入<%@ OutputCatche Duration=60 VaryByParam="textbox1" %>
.Duration
.VaryByParam
.片斷緩衝(在USERCONTROL裡加以上的OUTPUTCACHE,即成片斷緩衝),但又增加了
另一種出錯的可能(一個控制兩個執行個體),所以要加
.VaryByControl
.資料緩衝
放在APLICATION,SESSION,另加了CACHE裡.
.到期依賴條件
Cache.Insert("MyData",source,new CacheDependency(Server.Mappath("myauthor.xml")));
絕對的:
Cache.Insert("MyData",Source,null,
DateTime.Now.AddHours(10,TimeSpan.Zero);
相對的:...