一起談.NET技術,40條ASP.NET開發Tip
1、在compilation 下,請設定debug=false ,如下:
2、請使用Server.Transfer代替Response.Redirect。
3、使用Validator控制元件,請要經常檢查Page.IsValid。
4、請使用foreach迴圈,而不是為字串迭代迴圈。
5、請使用客戶端驗證方式(不要每次都在服務端驗證)。
6、為了避免重複程式碼執行,請檢查“Page.IsPostBack”。
7、GIF 和PNG類似,但是PNG通常產生一個較小體積的檔案。(當然,有些瀏覽器不支援PNG格式)
8、更新二進位制檔案時,請使用AppOffline.htm 。
9、除非需要,否則請關閉跟蹤。
“SortByTime” localOnly=”true”/>
10、編譯頁面,請禁用AutoEventWireup。在Machine.config檔案中請設定AutoEventWireup為false。
11、如果不需要,請關閉Session會話。
=”tcpip=127.0.0.1:42424″ sqlconnectionstring=”data source=127.0.0.1;Trusted_Connection=no”>
12、在你生成最終版本的應用程式之前,請選擇Release模式。預設是Debug。
13、如果不需要請禁用ViewState 。
14、請避免頻繁的訪問資料庫。
15、使用快取提高你的應用程式的效能。
16、驗證所有的使用者輸入。
17、請最後釋放所有資源。
18、String 和Stringbuilder。
修改字串時,使用Stringbuilder而不是String ,在每次字串修改的時候,String都會佔據不同的記憶體空間,而Stringbuilder只使用同一個記憶體空間
19、切勿直接使用物件的值,先從本地變數獲取物件的值,然後再使用。因為直接讀取物件的值比讀取變數更花時間。
20、避免異常:使用if。
21、程式碼優化:避免使用:x = x +1,而是使用x+=1比較好。
22、資料訪問技術:DataReaders提供快速有效的資料檢索方法。在效能方面,DataReader是速度遠遠超過DataSets 。
23、在做一個笨重的ASP程式碼的處理之前,你進行檢查以確保Response.IsClientConnected。
24、避免session變數,因為每個ASP頁面是在不同的執行緒執行和session呼叫將會被逐一序列化。這樣會降低應用程式。你可以使用QueryString集合或者表單上面的hidden變數來儲存值。
25、使buffer有效,能提高效能,如:
接著使用:
26、使用Repeater控制元件代替DataGrid,DataList,因為它是高效的,可定製的,和可程式設計的。
27、在資料庫中檢索大量資料,資料列表消耗更多的時間。
分頁將顯示特定的資料,但是要考慮所有資料負載。只取當前頁需要的資料。
28、避免內嵌JavaScript和CSS。
29、使用單個的css檔案,而不是多個css檔案。
請儘量將您所有的css合併成一個css的類檔案,不管檔案大小,大量的.css檔案會造成大量的請求。.css檔案通常是由瀏覽器快取,這樣一個單一的沉重的.css檔案不會導致在每個頁面請求時會有漫長的等待。
內嵌.CSS類導致HTML沉重,因此我覺得:首先考慮一個single.css檔案。
30、減少cookie的大小。
31、壓縮CSS, JavaScript 和Images。
可以使用線上的壓縮,壓縮檔案,將下列網頁和優化的程式碼替換為您的檔案內容。
http://iceyboard.no-ip.org/projects/css_compressor[^] CSS 壓縮
www.xtreeme.com/javascript-optimizer/[^] . JS 壓縮
32、適當地使用快取。
i、頁面輸出快取:
ii、頁片段快取:
在每個使用者控制元件中寫頁面輸出快取
iii、資料快取:
Protected void Page_Load (Object src, EventArgs e)
{
DataView dv = (DataView) Cache. Get (“EmployeesDataView“);
If (dv == null)
{ // wasn`t there
SqlConnection conn = new SqlConnection (“server=localhost;uid=sa;pwd=;database=Test“);
SqlDataAdapter da =new SqlDataAdapter (“select * from Employees“, conn);
Dataset ds = new DataSet();
da.Fill(ds, “Employees“);
dv = ds.Tables[“Employees“].DefaultView;
Cache.Insert (“EmployeesDataView“, dv);
conn.Close();
}
Else
Response.Write (“
Loaded employees from data cache!
“);
lb1.DataSource = dv;
lb1.DataTextField = “Name“;
lb1.DataValueField = “Age“;
DataBind () ;
}
script>
33、伺服器端使用諸如Port80s壓縮軟體http://www.port80software.com/products/httpzip/[^]。
34、使用了“using”。
35、不要宣告成員變數為 public 或者proteted,儘量使用private 成員變數和public/protected 屬性。
36、使用strString=string.Empty 代替 strString=”” 。
37、請儘可能減輕你的頁面檔案,儘量避免不必要的標籤,例如使用div代替table。
38、在div中寫靜態的訊息,必要的時候才顯示出來。這比你設定服務端的label和div的text屬性快。
39、如果可能的話,一次性檢索資料庫中的資料。儘可能不要新增資料庫的訪問。因此,整合來自不同表datafields和選擇它們。
40、給WebControl取個簡短的名字。
相關文章
- 一起談.NET技術,淺談ASP.NET4中構造HTML5視訊控制元件ASP.NETHTML控制元件
- .NET平臺系列25:從 ASP.NET 遷移到 ASP.NET Core 的技術指南ASP.NET
- ios開發者談談技術面試那些坑 | 掘金技術徵文iOS面試
- iOS開發小tipiOS
- Asp.net網站開發ASP.NET網站
- Asp.net web框架Nancy的技術文章整理ASP.NETWeb框架NaN
- 艾偉_轉載:ASP.NET模板引擎技術ASP.NET
- Asp.Net快速開發平臺(敏捷開發框架ASP.NET敏捷框架
- ASP.NET Core 6 從入門到企業級實戰開發應用技術彙總ASP.NET
- 基於Asp.NET CORE 技術框架開發的實驗室資訊管理系統原始碼LISASP.NET框架原始碼
- 技術乾貨:ASP.net mvc面試32題附答案ASP.NETMVC面試
- 區塊鏈技術開發談信任體系的開發潛力區塊鏈
- 淺談.NET技術公司的實習生培養
- ASP.NET MVC隨想錄——漫談OWINASP.NETMVC
- 淺談馬蹄鏈DAPP專案系統開發技術邏輯(技術分析)APP
- ASP.NET Core技術研究-全面認識Web伺服器KestrelASP.NETWeb伺服器
- ASP.NET Core - 開篇ASP.NET
- Asp.net怎麼極速開發軟體ASP.NET
- ASP.NET Razor – VB 邏輯條件簡介ASP.NET
- 區塊鏈技術開發公司談區塊鏈如何良性發展區塊鏈
- 強大asp.net智慧開發工具,力軟快速開發平臺ASP.NET
- 【視訊】使用ASP.NET Core開發GraphQL服務ASP.NET
- 使用 ASP.NET Core 3.1 的微服務開發指南ASP.NET微服務
- 淺談區塊鏈代幣技術系統開發專案方案(成熟合約技術)區塊鏈
- ASP.NET Razor – C# 邏輯條件簡介ASP.NETC#
- 洽談區塊鏈互助遊戲開發系統開發功能及(成熟技術)區塊鏈遊戲開發
- 不重視技術,何談掌握核心技術?
- 小白開學Asp.Net Core 《十》ASP.NET
- 小白開學Asp.Net Core 《九》ASP.NET
- 小白開學Asp.Net Core 《八》ASP.NET
- 小白開學Asp.Net Core 《四》ASP.NET
- 小白開學Asp.Net Core 《六》ASP.NET
- 《ASP.Net Core技術內幕與專案實戰》讀書筆記_1ASP.NET筆記
- 淺談swap去中心化交易所繫統開發技術方案中心化
- 零基礎ASP.NET Core MVC外掛式開發ASP.NETMVC
- 談談數字城市的技術短板
- 漫談 SLAM 技術(上)SLAM
- 區塊鏈技術開發公司談區塊鏈保險的特點區塊鏈