1:command調用存儲過程的時候,如果輸出是dataset,selectcommand的command對象的connection先要指出,否則catch一輩子也是空的..
2:存儲過程的varchar字段如果是x.x的這種格式,容易出現細微的傻錯誤,注意不要漏了[].
3:如果ascx文件的默認服務器控件的事件不重寫的話在control控件裡面沒有自動回送!切記.
4:Page.RegisterOnSubmitStatement在ascx文件中小心使用...
5:viewstate在true的狀態下暴漲了許多沒用的數據...
6:明確掌握事件的前後次序.,諸如onsubmit和onclick的區別沒啥說的...
7:注意page_load和__dopostback的關系,
8:如果在頁面動態加載ascx的話,分清楚page_init的要執行的操作,不要濫用用戶控件和自定義服務器控件(重點)
9:cs文件框架需要明確,最後集成,定版本好.
10;使用第三方的在線編輯器的話最好使用框架,ok?!
11:多個CS文件編譯的時候後面的源不要加逗號就可以了.
12:在第五點中加載的js可以單獨開發,在onsubmit中,因為form只有一個ascx很多,
13:系統的錯誤全部標出錯誤碼(以後可以在xml文檔幫助文檔中寫出,多語言版本可以共用),這想法真好.
14:控件本身用loadcontrol的時候出現不識別page頁面的屬性,只有在page頁面的inhert修改之.
15:注意這個存儲過程:
CREATE proc spage
@pagesize int,
@destpage int
as
set nocount on
declare @id int
declare @startid int
select @startid = (@destpage - 1)*@pagesize
set rowcount @startid
select @id = id from [crm_articler]
set rowcount @pagesize
set nocount off
select * from t_member where id > @id order by id
GO
execute後面的()有無有莫大關系.
16:別在page_load裡面試圖修改全局變量,沒那功能的.
17:帶有不確定性口氣的程序沒看的必要性。
18:後台使用框架的技巧(style,js,類)布置合理,盡量獨立出後台,不依賴前台的部分命名空間或類。
19:可以這樣使用:using (context = System.Web.HttpContext.Current)
20:盡量把編譯的輸出文件簡潔+獨立,功能是一個模塊的就編譯成一個文件,但不要把module(usercontrol)和普通的放開,因為UserControl有assembly的問題。
21:磁盤讀取xml文件是很慢的,不要老是讀取之,可以放入緩存的就放進去。
22:文件讀取reader,或者datareader一定要close();