Time of Update: 2018-12-06
中國標準書號校正碼的計算方式(附C#代碼) 近段時間做了一個ERP項目,涉及到圖書銷售,於是熬了幾個晚上研究了一下相關事情……抽空將一些內容梳理了一下。首先瞭解一些必要的術語及定義:---------------------------------------EAN•UCC首碼 EAN•UCC prefix國際物品編碼協會分配的產品標識編碼。---------------------------------------校正碼 check
Time of Update: 2018-12-06
前一篇《Visual C#.Net網路程式開發-Socket篇》中說到:支援Http、Tcp和Udp的類組成了TCP/IP三層模型(請求響應層、應用協議層、傳輸層)的中介層-應用協議層,該層的類比位於最底層的Socket類提供了更高層次的抽象,它們封裝 TCP 和 UDP 通訊端的建立,不需要處理串連的細節,這使得我們在編寫通訊端層級的協議時,可以更多地嘗試使用 TCPClient 、 UDPClient和TcpListener,而不是直接向 Socket 中寫。它們之間的這種層次關係示意如下:
Time of Update: 2018-12-06
《資料結構》這門課程的目的有三個。第一個是講授常用的資料結構,這些資料結構形成了程式員基本資料結構工具箱(toolkit)。對於許多常見的問題,工具箱裡的資料結構是理想的選擇。就像.NET
Time of Update: 2018-12-06
public string GetClientIP() { string sUserIP = string.Empty; if (Request.ServerVariables["HTTP_VIA"] != null) { // 穿過Proxy 伺服器取遠端使用者真實IP地址 sUserIP =
Time of Update: 2018-12-06
執行個體:class Program { static void Main(string[] args) { DelegateEvent de = new DelegateEvent(); de.Do(); Console.Read(); }} class DelegateEvent { public void Do() {
Time of Update: 2018-12-06
我們學習網路編程最熟悉的莫過於Http,好,我們就從Http入手,首先我們肯定要瞭解一下http的基本原理和作為,對http的工作原理有一定程度的掌握,對我們下面的學習都是有很大協助的。 一: 工作方式 ①:client和server建立可靠的TCP串連。 ②:然後client通過Socket向server發送http請求。 ③:server端處理請求,返回處理資料。 ④:在http1.0中,client與server之間的tcp串連立即斷開。
Time of Update: 2018-12-06
1,DefaultValue的作用:不是提供設計時的預設值,是當你輸入的值與你設定的值相同時,這個值不變黑【加粗顯示】。[Description ("value of label1") ,DefaultValue("label123") ] public string CODE { get { return label1.Text; } set { label1.Text = value; }
Time of Update: 2018-12-06
第三篇來的好晚啊,上一篇說了如何向伺服器推送資訊,這一篇我們看看如何"快好准"的從伺服器下拉資訊。 網路上有很多大資源檔,比如供人下載的zip包,電影(你懂的),那麼我們如何快速的進行下載,大家第一反應肯定就是多線程下載,那麼這些東西是如何做的呢?首先我們可以從“QQ的中轉站裡面拉一個rar下來“。然後用fiddler監視一下,我們會發現一個有趣的現象:第一:7.62*1024*1024≈7990914
Time of Update: 2018-12-06
大家都容易把這兩者搞混,我也一樣,在聽李建忠老師的設計模式時,他也老把抽象類別說成介面,弄的我就更糊塗了,所以找了些網上的資料. 一、抽象類別: 抽象類別是特殊的類,只是不能被執行個體化;除此以外,具有類的其他特性;重要的是抽象類別可以包括抽象方法,這是普通類所不能的。抽象方法只能聲明於抽象類別中, 且不包含任何實現,衍生類別必須覆蓋它們。另外,抽象類別可以派生自一個抽象類別,可以覆蓋基類的抽象方法也可以不覆蓋,如果不覆蓋,則其衍生類別必須覆蓋它們。
Time of Update: 2018-12-06
類和結構的區別 1、實值型別和參考型別 結構:結構是實值型別; 實值型別在堆棧上分配地址,所有的基底類型都是結構類型,例如:int對應System.int32結構,string對應system.string結構 ,通過使用結構可以建立更多的實值型別。 類:類是參考型別; 參考型別在堆上分配地址。 堆棧的執行效率要比堆的執行效率高,可是堆棧的資源有限,不適合處理大的邏輯複雜的對象。所以結構處理作為基底類型對待的小對象,而類處理某個商業邏輯。
Time of Update: 2018-12-06
我們都知道,C#中有“介面”這個概念,所謂的“介面”就是定義一套標準,然後由實作類別來具體實現其中的方法,所以說“介面,是一組類的抽象”。同樣道理,我們可以將“委託”理解為“方法的抽象”,也就是說定義一個方法的模板,至於這個方法具體是怎麼樣的,就由方法自己去實現。我們知道介面的最大好處就是可以實現多態,同理,“委託”是可以實現方法的多態,當我們想調用某個具體方法的時候,我們不直接調用這個方法,而是去調用這個委託。當然,我們必須在具體方法和委託之間建立某種關聯。定義和使用委託分三個步驟:1、委託聲
Time of Update: 2018-12-06
IE6下,"res://C:\WINDOWS\system32\shdoclc.dll http_403.htm&http://..(具體路徑)" 的錯誤。是因為,我在背景路徑是“../Admin/其他目錄”。其中Admin位於根目錄下。在ie6下,又因為“../”表示根目錄,所以導致會在實際路徑前面加上一個其他的路徑。所以如果Admin已經在根目錄下,在IE6下 ,只需要去掉“../”及可以解決問題。該問題會導致出現:403 forbidden、禁止訪問等錯誤。
Time of Update: 2018-12-06
一、名稱解釋:CLS:common language specilication:通用語言規範;CLR:common language Runtime 通用語言執行平台。Managed 程式碼:編譯的代碼直接clr等一層一層的進行 代碼編譯(C#--C#編譯器--CLR(把它編譯為IL)--IL--本地cpu可執行代碼)並進行型別安全驗證、資源釋放等操作。Unmanaged
Time of Update: 2018-12-06
摘要:今天我們漫談C#中的記憶體回收機制,本文將從記憶體回收機制的原理講起,希望對大家有所協助。 GC的前世與今生 雖然本文是以.NET作為目標來講述GC,但是GC的概念並非才誕生不久。早在1958年,由鼎鼎大名的圖林獎得主John
Time of Update: 2018-12-06
最近做一些東西經常用到Regex,而且經常改動。如果把正則寫成常量,需要轉義,看起來很坑爹。如果配置到xml,一個麻煩,另外xml特殊字元也需要轉義,仍然坑爹。為了能讓Regex可配置,看起來又好維護,我將Regex放到一個txt裡面,每行一個,格式為{name}##{regex},同時支援#開頭的注釋。下面是載入解析代碼: /// <summary>/// Regex載入類/// </summary> internal static
Time of Update: 2018-12-06
在.Net裡用正則的時候,有一些選項會給我們很大協助,選項一般以一個字母表示,在使用的時候我們可以在構建Regex類的時候在構造方法裡面用枚舉或的方式傳入, 如下面: Regex r = new Regex(@"\w+", RegexOptions.Compiled | RegexOptions.IgnoreCase); 也可以直接放在Regex字串的前面, 格式為 (?{選項列表}){Regex}
Time of Update: 2018-12-06
最近經常做小項目,如果想代碼寫的靠譜點就必須用到日誌,但是常用的日誌架構,比如企業庫或者log4net都要配置個半天,如果想自訂某個功能也比較麻煩。沒辦法自己實現了個傻瓜日誌類,代碼很土鱉,不過簡單易改,無配置。 public static class SBLogger {static SBLogger() { _LogDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory,
Time of Update: 2018-12-06
這兩天隨便翻了一下.Net程式員面試寶典,發現一個很有意思的題目:編寫一個程式將此程式的原始碼原封不動的列印出來,也就是說程式運行後在命令列上面列印的內容和原始碼完全相同。如果不仔細思考,可能我們會立即開始編碼,然後想用Console.WriteLine來搞定這個問題,但有兩個棘手的問題得解決。 1.
Time of Update: 2018-12-06
條件運算式:(?(if)then|else)說明:if是分組名稱或序號,如果是命名分組匹配,也就是格式為(?<name>xxx)的,則為名稱name;如果是普通分組,也就是格式為(xxx)的,則為序號。 then是分組匹配時要匹配的項, else是分組不匹配時要匹配的項。例子:運算式是'(<(?<tag>\w+)\s+[^>]*\s*>)?\w+(?(tag)</\k<tag>>)', 用來匹配超連結標籤。
Time of Update: 2018-12-06
反射(Reflection)是.NET中的重要機制,通過放射,可以在運行時獲得.NET中每一個類型(包括類、結構、委託、介面和枚舉等)的成員,包括方法、屬性、事件,以及建構函式等。還可以獲得每個成員的名稱、限定符和參數等。有了反射,即可對每一個類型了如指掌。如果獲得了建構函式的資訊,即可直接建立對象,即使這個對象的類型在編譯時間還不知道。 1、.NET可執行應用程式結構 程式碼在編譯後產生可執行檔應用,我們首先要瞭解這種可執行應用程式的結構。 應用程式結構分為應用程式定義域—程式集—