之前一直用的產生驗證碼方法,取4位元字沒有問題,結果加上字母,取6位後,效率非常低。 改進了一下,方法如下 複製代碼 代碼如下: var text2 = ""; var random = new Random((int)DateTime.Now.Ticks); const string textArray = "23456789ABCDEFGHGKLMNPQRSTUVWXYZ"; for (var i = 0; i < iVcodeNum; i++) { text2 = text2 +
近段時間,有朋友叫Insus瞭解一下反射(Reflection)方面的知識,反射提供了封裝程式集、模組和類型的對象(Type類型)。可以使用反射動態建立類型的執行個體,將類型綁定到現有對象,或從現有對象擷取類型並調用其方法或訪問其欄位和屬性。如果代碼中使用了屬性,可以利用反射對它們進行訪問。 下面的例子,是Insus練習對一個類別的屬性進行set和get值。 首先寫一個類,再寫一個可讀寫的屬性: 複製代碼 代碼如下: using System; using System.Collections.
複製代碼 代碼如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Net; using System.IO; using System.Web.Services.Description; using System.CodeDom; using Microsoft.CSharp; using System.CodeDom.Compiler;
Insus.NET的解決方案,是使用Factory 方法來處理,可以建立一個工廠介面,然後每個方法設計為一個工廠類,並實現工廠介面。 工廠介面: 複製代碼 代碼如下: IGetFactory using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary> /// Summary description for IGetFactory /// </
override是指“覆蓋”,是指子類覆蓋了父類的方法。子類的對象無法再訪問父類中的該方法。new是指“隱藏”,是指子類隱藏了父類的方法,當然,通過一定的轉換,可以在子類的對象中訪問父類的方法。所以說C# new和override的區別是覆蓋和隱藏 以下是代碼:複製代碼 代碼如下:<PRE class=csharp name="code">class Base { public virtual
複製代碼 代碼如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;