首頁  >  文章  >  後端開發  >  C#開發中遇到的問題分享

C#開發中遇到的問題分享

零下一度
零下一度原創
2017-06-28 14:53:311657瀏覽

1、建構子不能帶回傳值類型,因為建構函式回傳就是物件本身。

2、將字串轉換成日期類型,用DateTime.Parese()或DateTime. ParseExact ()函數。

3、if(!Page.IsPostback){}

使用函數,使網頁僅在第一次載入時運行函數體的內容,在Page_Load()事件中,通常可用於初始化。如果不使用函數,則可能會在某些控制項回傳時再次執行if()函數體內的內容,導致相關控制項修改後的值沒有正確應用。

4、GridView的欄位(BoundField)有一個屬性HtmlEncode。這個屬性用於將HTML進行包裝,如果為true(預設值),則原樣顯示欄位內的內容。如果為false,則將欄位內對應的HTML標籤進行渲染。因此,要使欄位內的圖片連結顯示出來,應設定HtmlEncode=「true」。

5、網頁中取得日期後格式化的方法:Eval("wtDate", "{0:yyyy-MM-dd}")

但在DateTime.Now.Date .ToString("yyyy-MM-dd") 中的字串格式化卻有所不同。

6、NVarChar資料類型,在SQL SERVER 2005中具有NVarChar(max)類型來代表最大為2^32 的數字,但是在.net2.0中並不支援這個類型,NVarChar最大能表示的數仍為4000位元組。

7、將字串類型轉換為Guid類型,可將字串作為Guid建構函數的參數進行傳遞。

如: Guid gd = New Guid(string);

Guid類型的空值為Guid.Empty ,而非null。

8、最好對各字段都存儲值,即便不使用,也就進行初始設置,以避免為空值時,出現數據類型不匹配現象,如DateTime,uniqueIdentifier字段,取出空值進行處理時會帶來麻煩。

9、對記錄數進行統計,使用類似下面的語句:

int cout =(int)cmd.ExecuteScalar();

10.儲存過程中,通配符與參數結合使用,要採用字串加法,而不能直接放在參數兩側,如下:

 WHERE RTRIM(f.ftTitle) LIKE '%'+RTRIM(@ searchkey)+'%'

11、要取得list物件中某項的值,可採用下列方法:

如List CurrentFault = new List

 假設ftInfo類別中定義了ftIsResovled屬性,那麼,要取得CurrentFault的第0項的ftIsResolved值,可透過語名: CurrentFault[0].ftIsResolved 來獲得。

12、Input控制項包含有標籤的內容(如)時,可能會有以下因為安全問題所造成的錯誤:說明: 請求驗證程序偵測到有潛在危險的客戶端輸入值,對請求的處理已經中止。該值可能指示危及應用程式安全的嘗試,如跨網站的腳本攻擊。透過在 Page 指令或 設定節中設定 validateRequest=false 可以停用請求驗證。但是,在這種情況下,強烈建議應用程式明確檢查所有輸入。

13、顯示有HTML標記的欄位內容,如果需要渲染HTML標籤,可以設定htmlencode屬性為true。設定為false時,欄位內的HTML標籤將按普通字元顯示。也可以使用HtmlEncode()方法來渲染欄位內容的HTML標籤。

14、LoginStatus控制項可以方便地顯示登入狀態,並且提供登入和登出的快速連結。但有時並不方便,特別是註銷的同時要退出框架網頁時,使用該控制就顯得力不從心。可以直接使用LinkBut​​ton控件,在點擊事件中,添加如下兩句,就可以實現註銷的同時跳到框架網頁的父窗口:

FormsAuthentication.SignOut();

#Response .Write("");

 

# 15.C#中關閉視窗:
Response.Write("");


#############################################################################################################

以上是C#開發中遇到的問題分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn