Time of Update: 2018-12-04
C#語言有兩種不同的常量機制:一種為編譯時間 (compile-time)常量,一種為運行時(runtime)常量。兩種常量有著非常迥異的行為,使用不正確會導致程式的效能下降或者出現錯誤。這 兩種代價,哪一個都沒有人願意承擔,但是如果必須承擔一個,那麼“慢、但是能夠正確啟動並執行”程式總比“快、但是可能出錯的”程式要好。因此,我們說運行時 常量優於編譯時間常量。編譯時間常量比運行時常量稍微快一點,但卻缺乏靈活性。只有在效能非常關鍵,並且其值永遠不會改變的情況下,我們才應該使用編譯時間常
Time of Update: 2018-12-04
C#是一門強型別語言。一般情況下,我們最好避免 將一個類型強制轉換為其他類型。但是,有時候運行時類型檢查是無法避免的。相信大家都寫過很多以System.Object類型為參數的函數,因為. NET架構預先為我們定義了這些函數的簽名。在這些函數內部,我們經常要把那些參數向下轉型為其他類型,或者是類,或者是介面。對於這種轉型,我們通常有 兩種選擇:使用as操作符,或者使用傳統C風格的強制轉型。另外還有一種比較保險的做法:先使用is來做一個轉換測試,然後再使用as操作符或者強制轉
Time of Update: 2018-12-04
具有常量性的類型很簡單,它們自建立後便保持不 變。如果在構造的時候就驗證了參數的有效性,我們就可以確保從此之後它都處於有效狀態。因為我們不可能再更改其內部狀態。通過禁止在構建對象之後更改對 象狀態,我們實際上可以省卻許多必要的錯誤檢查。具有常量性的類型同時也是安全執行緒的:多個reader可以訪問同樣的內容。因為如果內部狀態不可能改 變,那麼不同線程也就沒有機會獲得同一資料的不同值。具有常量性的類型也可以安全地暴露給外界,因為調用者不可能改變對象的內部狀態。具有常量性的類型在
Time of Update: 2018-12-04
實值型別還是參考型別?結構還是類?如何正確地使用它們?這裡不是C++,在那裡,所有的類型都被我們定義為實值型別,然後我們可以選擇建立它們的引用形式。這也不是Java,在那裡,所有的類型都是參考型別[9]。 在C#中,我們必須在設計類型的時候就決定類型執行個體的行為。這種決定非常重要。我們必須清楚這種決定的後果,因為後期的更改會導致許多代碼在不經意間出現
Time of Update: 2018-12-04
System.Object.ToString ()恐怕是.NET中最常用的方法了。應該為我們的類的所有客戶代碼提供一個合理的版本,否則這些代碼就只能使用我們的類的一些屬性來自己定製可讀的表示 了。類型的字串表示非常有用,可以在很多地方向使用者顯示對象的有關資訊,例如在Windows Forms上、Web Forms上、控制台輸出視窗中,以及調試環境中。為此,我們建立的每一個類型都應該重寫Object類的ToString()方法。如果建立的是更複雜
Time of Update: 2018-12-04
#if/#endif 條件編譯常用來由同一份原始碼產生不同的結果檔案,最常見的有debug版和release版。但是,這些工具在具體應用中並不是非常得心應手,因為它們 太容易被濫用了,使用它們建立的代碼通常都比較難理解,且難以調試。C#語言的設計者們對這種問題的解決方案是建立更好的工具,以達到為不同環境建立不同 機器碼的目的。C#為此添加了一個Conditional特性,該特性可以標示出某種環境設定下某個方法是否應該被調用。使用這種方式來描述條件編譯要比
Time of Update: 2018-12-04
一、物件導向 1. 使用者介面 :一種規範。 1)介面的方法定義都不能實現。 2)如果繼承介面,介面的定義要全部實現。 介面定義 interface 名稱{ // code //預設訪問public } 多重繼承介面public class Name :Parent , Interface,Interface2 //逗號隔開 2. 關鍵字 is : 用於檢查某個對象是否與給定物件類型相容。 if(obj is
Time of Update: 2018-12-04
.NET系統的預設初始化機制會將所有的對象設定為0[14]。對於實值型別來講,我們無法阻止其他程式員將其所有的成員都初始化為0[15]。因此,我們應該將0作為實值型別的預設值。枚舉類型就是一種典型的情況。我們建立的枚舉類型決不應該將0視為無效狀態。我們知道,所有的枚舉類型都繼承自System.ValueType。預設的枚舉值從0開始,但是我們可以更改這種預設行為。public enum Planet{ // 顯式賦值。 // 否則將預設從0開始。 Mercury = 1, Venus =
Time of Update: 2018-12-04
1、頁面內嵌法: <style type="text/css"> <!-- body { background : white ; color : black ; } --> </style> 其中 Style 中可以指定ID這樣別的控制項就可以直接調用此樣式!如: <style type= "text/css " id ="gvcss"> body { SCROLLBAR-FACE-COLOR: #f6f6f6;
Time of Update: 2018-12-04
#region /// <summary> /// 設定gridview的樣式 /// </summary> /// <param name="gv">gridview 名稱</param> public static void gvStyleSet(System.Web.UI.WebControls.GridView gv) {
Time of Update: 2018-12-04
C#資料庫連接字串集合(一)常用串連:1.使用SqlConnection對象:a. Sql 驗證public void SqlConnectionOpen(){SqlConnection conn= new SqlConnection();conn.ConnectionString = "user id=sa;password=;initial catalog=northwind;datasource=localhost;connect Timeout=20";conn.Open();} b.
Time of Update: 2018-12-04
假設當前頁完整地址是:http://www.test.com/aaa/bbb.aspx?id=5&name=kelli"http://"是協議名"www.test.com"是網域名稱/主機"aaa"是網站名"bbb.aspx"是頁面名(檔案名稱)"id=5&name=kelli"是參數【1】擷取 完整url (協議名+網域名稱+網站名+檔案名稱+參數)string url=Request.Url.ToString();url=
Time of Update: 2018-12-04
在VS 2003的工程中添加Microsoft SQL Server 2000 Desktop Engine (MSDE)的自動安裝合併模組MSM:1.下載MSDE2000的sp3a安裝包。2.解壓到本地硬碟,其中的MSM檔案夾中的東東就是MSDE2000合併模組。3.在你的工程中添加一個安裝工程假設為MySetup,按照正常的步驟添加工程輸出(Project Output),選擇輸出檔案(primary output)和內容檔案(content files)兩項。4.添加合併模組(Merge
Time of Update: 2018-12-04
這三個方法用於刪除字串頭尾出現的某些字元。Trim()刪除字串頭部及尾部出現的空格,刪除的過程為從外到內,直到碰到一個非空格的字元為止,所以不管前後有多少個連續的空格都會被刪除掉。TrimStart()只刪除字串的頭部的空格。TrimEnd()只刪除字串尾部的空格。
Time of Update: 2018-12-04
內嵌函式——用inline聲明的函數是內嵌函式。1.為什麼使用內嵌函式? ——在程式中,某個函數被頻繁的調用,程式在運行過程中,就需要頻繁的跳轉至改函數去執行調用,當這種跳轉達到成百上千次的時候,會嚴重影響到程式的執行效率。2.內嵌函式的具體運用C++中,為瞭解決這一問題,使用關鍵字inline聲明函數,如:inline int
Time of Update: 2018-12-04
c#基礎:格式化標識符字母含義C或cCurrency 貨幣格式D或dDecimal 十進位格式(十進位整數,不要和.Net的Decimal資料類型混淆了)E或eExponent 指數格式F或fFixed point 固定精度格式G或gGeneral 常用格式N或n用逗號分割千位的數字,比如1234將會被變成1,234P或pPercentage 百分符號格式R或rRound-trip 圓整(只用於浮點數)保證一個數字被轉化成字串以後可以再被轉回成同樣的數字X或xHex
Time of Update: 2018-12-04
枚舉例如有 public enum AnimalEnum { Dog =12, Cat = 10 }Enum To StringAnimalEnum.Dog.ToString() == DogEnum To Intint i = (int)AnimalEnum.Dog;遍曆枚舉(反射 + Enum.GetNames())字串格式 Type type = typeof(AnimalEnum); string[] names =
Time of Update: 2018-12-04
摘要:在對B/S結構和C/S結構進行充分分析比較的情況下,簡述了今後發展的前景,並提出了一種新的體繫結構。結合B/S與C/S,將組件技術COM+和AcdveX技術分別應用在伺服器端和用戶端,從而開發出高效、安全的應用系統。關鍵詞:C/S B/S
Time of Update: 2018-12-04
1 . 括弧 () //最高2. 遞增/遞減 ++/ -- // 一元的運算 3. 乘、除、模數 * 、/ 、 % //二元運算4. 加、減 + 、 - 5. 比較運算 < <= > >= 6. 比較運算 == != 7. 邏輯與
Time of Update: 2018-12-04
一、文法迴圈: foreach(類型標識符 in 運算式) { //code //用法 }例子int [] temp = {64,5,57,65}; foreach(int num in temp) // 每次從temp取一個元素賦給num直至取完{