Time of Update: 2017-01-18
題外話:學習.NET已經有一年了,從C#->ASP.NET->WPF。主要以看電子書為主,比較少寫代碼。現在回頭學習以前接觸過的,隨著知識與經驗的的積累。 總是有各種驚喜,震驚!C#數組就是其中之一,我把它作為自己部落格園的處女作。 C#數組與其它C系列語言有著很多的不同,以前接觸的時候理解出現很大的偏差。尤其是對多維陣列的認識。多維陣列與C語言相比是一個新概念。而最開始的 時候我把它當成交錯數組的特殊類型。 首先重二維數組與簡單的交錯數組的初始化與訪問開始 複製代碼 代碼如下:
Time of Update: 2017-01-18
W3C制定了XML DOM標準。很多程式設計語言中多提供了支援W3C XML DOM標準的API。我在之前的文章中介紹過如何使用Javascript對XML文檔進行載入與查詢。在本文中,我來介紹一下.Net中的XmlDocument類。它支援並擴充了W3C XML
Time of Update: 2017-01-18
W3C制定了XML DOM標準,.Net為了支援W3C的標準,從1.1版本開始就引入了XmlDocument類。我在前一篇部落格中,介紹了如何使用XmlDocument類來對XML文檔進行操作。後來 .Net又引入了LINQ,於是LINQ to XML也就應運而生,所以在.Net中,不僅可以用W3C XML DOM標準,還可以使用LINQ to XML來操作XML文檔。下面就來簡單介紹一下如何使用LINQ to XML。 (一) 載入 載入XML比較常用的有三種方法: 複製代碼 代碼如下:
Time of Update: 2017-01-18
在系統的管理員有著實際的應用,對於一個資料庫管理系統來說,資料庫安全還是挺重要的,所以在存入到資料庫的密碼通常都是加密的。即使有著hack攻破資料庫後,也不會那樣的容易的盜取你的帳號和密碼,這樣可以減輕你的不必要的損失。好吧,下面就是一些基本的實現代碼: 加密的代碼格式是一樣的: 第一步:複製代碼 代碼如下: <span style="font-size: 16px; color:
Time of Update: 2017-01-18
許多小公司的項目都缺少異常處理模組,我們也是。經常會出現這種情況,使用者在UI介面操作,就直接跳出堆棧調用的異常資訊對話方塊,老闆看到那叫一個火啊!你們的代碼怎麼天天出現亂碼。呵呵!這就是沒有異常捕獲處理導致的,現在許多人寫代碼都沒意識處理異常,只要實現功能就好,我的許多組員也是如此。 項目剛接手,所以打算做一個異常全域捕獲,統一處理的模式,採用具體詳細資料的對話方塊提醒與記錄檔儲存方式。以下是根據網上找的C#winform全域異常捕獲做了點修改。(等項目異常處理全部完成後,將心得體會做個記錄,
Time of Update: 2017-01-18
在.Net中,對檔案(File)和檔案夾(Folder)的操作可以使用File類和Directory類,也可以使用FileInfo類和DirectoryInfo類。檔案夾(Folder)是只在Windows作業系統中使用的名詞。在作業系統的理論中,人們更習慣於使用目錄(Directory)這個名詞。或許微軟為了有朝一日將.Net移植到其他的作業系統中(實際上也有很多人也在做著這個項目),所以還是以Directory來命名操作檔案夾的類。
Time of Update: 2017-01-18
用於修飾類,方法,屬性和欄位的關鍵字: 首先從最簡單的private,protected,internal,public 解釋。 public 和internal 修飾類。 public,protected,private 修飾方法。 修飾類的時候: public 代表公開,也就是所有程式集都可以訪問這個類。 internal 代表內部的,也就是只有在同一程式集中才能訪問這個類,一般而言同一程式集就是同一個dll。 修飾方法的時候: public
Time of Update: 2017-01-18
本文執行個體講述了C#微信公眾號與訂閱號介面開發範例程式碼。分享給大家供大家參考,具體如下:using System;using System.Web;using System.IO;using System.Text;using System.Web.Security;using weixin_api;public class wxgz_api : IHttpHandler{ public void ProcessRequest(HttpContext context) {
Time of Update: 2017-01-18
本文執行個體講述了C#中圖片、二進位與字串的相互轉換方法。分享給大家供大家參考,具體如下:protected void Button1_Click(object sender, EventArgs e){ //圖片轉二進位 byte[] imageByte = GetPictureData(Server.MapPath("./uploadfile/111.png")); //二進位轉換成字串 string picStr =
Time of Update: 2017-01-18
方案一:Try...Catch(執行效率不高)複製代碼 代碼如下:private bool IsNumberic(string oText){ try { int var1=Convert.ToInt32 (oText); return true;
Time of Update: 2017-01-18
事件的聲明和使用與代理有很密切的關係,事件其實是一個或多個方法的代理,當對象的某個狀態發生了變化,代理會被自動調用,從而代理的方法就被自動執行。聲明和使用一個事件需要如下步驟:1.建立一個代理。2.在類的內部利用event關鍵字聲明事件,並且在類中定義呼叫事件的方法,也可以定義一個處理事件訊息的方法。 聲明一個事件的基本形式有兩種: 修飾符 event 類型 標識符 修飾符 event 類型&
Time of Update: 2017-01-18
1. 概述 將一個複雜物件的構造與它的表示分離,使同樣的構建過程可以建立不同的表示,這樣的設計模式被稱為建造者模式。2. 建造者模式中的角色 2.1 建造者(Builder):為建立一個產品對象的各個組件指定抽象介面。 2.2 具體建造者(ConcreteBuilder):實現Builder的介面以構造和裝配該產品的各個組件,定義並明確它所建立的表示,並 提供一個檢索產品的介面。 2.3 指揮者(Director):指揮並構造一個使用Builder介面的對象。 2.4
Time of Update: 2017-01-18
1. 概述 為其它對象提供一種代理以控制對這個對象的訪問。 解決的問題:如果直接存取對象比較困難,或直接存取會給使用者或系統帶來一系列問題。這樣對於用戶端(調用者)來說,就不需要直接與真實對象進行互動,解除了調用者與真實對象的耦合。2. 模式中的角色 2.1 抽象實體(Subject):定義了真實實體(RealSubject)和代理(Proxy)的公用介面,這樣就在任何時候使用真實實體(RealSubject)的地方使用代理(Proxy)。 2.2
Time of Update: 2017-01-18
1. 概述 將抽象部分(Abstraction)與實現部分(Implementor)分離,使它們可以獨立地變化。2. 解決的問題 在軟體系統中,有些類型由於自身的邏輯,它具有兩個或多個維度變化。為瞭解決這種多維度變化,又不引入複雜度,這就要使用Bridge模式。3. 模式中的角色 2.1 抽象(Abstraction):定義抽象介面,該介面中包含實現具體行為、具體特徵的Implementor介面。 2.2
Time of Update: 2017-01-18
1. 概述 將對象組合成樹形結構以表示“部分-整體”的階層。組合模式使得使用者對單個對象和組合對象的使用具有一致性。2. 解決的問題 當希望忽略單個對象和組合對象的區別,統一使用組合結構中的所有對象(將這種“統一”性封裝起來)。3. 組合模式中的角色 3.1 組合組件(Component):它是一個抽象角色,為要組合的對象提供統一的介面。 3.2 葉子(Leaf):在組合中表示子節點對象,葉子節點不能有子節點。 3.3 合成組件(Composite):定義有枝節點的行為,用來儲存組件,
Time of Update: 2017-01-18
1. 概述 將一個類的介面轉換成客戶希望的另外一個介面。Adapter模式使得原本由於介面不相容而不能一起工作的那些類可以在一起工作。2. 解決的問題 即Adapter模式使得原本由於介面不相容而不能一起工作的那些類可以在一起工作。3. 模式中的角色 3.1 目標介面(Target):客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。 3.2 需要適配的類(Adaptee):需要適配的類或適配者類。 3.3
Time of Update: 2017-01-18
1. 概述 定義一個操作中的演算法的骨架,而將步驟延遲到子類中。模板方法使得子類可以不改變一個演算法的結構即可重定義演算法的某些特定步驟。2. 模式中的角色 2.1 抽象類別(AbstractClass):實現了模板方法,定義了演算法的骨架。 2.2 具體類(ConcreteClass):實現抽象類別中的抽象方法,已完成完整的演算法。3. 模式解讀 3.1 模板方法類圖 3.2 模板方法模式代碼實現 /// <summary> /// 抽象類別 ///
Time of Update: 2017-01-18
1. 概述 有時被稱作發布/訂閱模式,觀察者模式定義了一種一對多的依賴關係,讓多個觀察者對象同時監聽某一個主題對象。這個主題對象在狀態發生變化時,會通知所有觀察者對象,使它們能夠自動更新自己。2. 解決的問題 將一個系統分割成一個一些類相互協作的類有一個不好的副作用,那就是需要維護相關對象間的一致性。我們不希望為了維持一致性而使各類緊密耦合,這樣會給維護、擴充和重用都帶來不便。觀察者就是解決這類的耦合關係的。3. 模式中的角色 3.1
Time of Update: 2017-01-18
內網使用者或代理上網的使用者使用 複製代碼 代碼如下: using System.IO; using System.Net; public string get_html() { string urlStr = "http://www.domain.com"; //設定要獲取的地址 HttpWebRequest hwr = (HttpWebRequest)HttpWebRequest.Create(urlStr); //建立HttpWebRequest對象 hwr.Timeout = 60000
Time of Update: 2017-01-18
直接貼代碼: 複製代碼 代碼如下: public class OSInfoMation { public static string OSBit() { try { ConnectionOptions oConn = new ConnectionOptions(); System.Management.ManagementScope managementScope = new System.Management.ManagementScope("\\\\localhost", oConn);