http://www.pconline.com.cn/pcedu/empolder/gj/vc/10203/43429.html 出處:PConline 責任編輯:zwg [02-3-29 9:23]作者:www.dlking.com
使用VS.Net 做.Net組件
轉載自: http://www.dlking.com 作者不詳
用Visual C#來做組件,其實是一件很容易的事情。至少比用VISUAL C++要容易的多。在本文中,筆者將為您詳細介紹如何來做一個組件。我們可以通過二個步驟來完成這個過程:1.制作一個組件;2.在客戶端測試這個組件。
一.制作一個組件
1.首先建立一個新類庫工程文件
選擇File->New->Project->Visual C# Projects->Class Library。填入工程文件名稱,并且通過Browse按鈕選擇文件要存放的目錄。然后點擊OK。
2.工程文件和他所包含的文件
此時的工程文件中的Solution Explorer已經加了兩個C#的類。分別是AssemblyInfo.cs和Class1.cs我們只要關心的是Class1.cs就可以了,AssemblyInfo.cs可以不管它。
3.namespace mcMath(名稱空間 mcMath)
雙擊Class1.cs,就會看到namespace mcMath,我們在客戶端調用組件的時候,會涉及到這個namespace:
public long Add (long val1, long val2) { return 0; }
public bool Extra { get { return true; } set { } }
至此,在確認上面的事情都已經完成后,編譯這個工程文件時就可以在bin/debug目錄里面找到mcMath.dll,它就是組件。但此時的組件沒有任何功能,下面我們將進一步的完善它。
4.加入一個方法
從View menu中打開ClassView,我們看到的Class1沒有任何方法和屬性。現在我們給它加上一個方法和一個屬性。
點中Class1,右擊,選擇Add->Add Method...
這時會彈出VISUAL C#的方法制作向導窗口。你可以在此向導的幫助下,為你的組件加入方法的名稱、訪問類型、返回值、參數,甚至是注釋。用Add和Remove按鈕可以方便的從參數列表中增加或刪除參數。我們在此加入一個方法:long Add( long val1,long val2 ),這個方法的功能是把兩個數相加,然后返回他們的和。 5.加入一個屬性
重復加入方法的過程,在同樣的位置,打開C#的屬性向導,按照下圖為組件加入一個屬性。
在上述過程完成以后,Class1就變成了如下的模樣:
再仔細看看Class1類,你就會發現向導在我們的組件中加入了兩個函數:
public long Add (long val1, long val2) { return 0; }
public bool Extra { get { return true; } set { } }
6.為Class添加代碼
按照下面的代碼改造Class,并且把Class1改名為mcMathComp(這是因為Class1是缺省名稱,容易造成混亂,在客戶端調用組件時候可能會出問題)。
namespace mcMath { using System; public class mcMathComp { private bool bTest = false; public mcMathComp() { } public long Add (long val1, long val2) { return val1 + val2; } public bool Extra { get { return bTest; } set { bTest = Extra ; } } } } 7.生成DLL
編譯工程文件生成組件,該組件會在工程文件的bin\debug目錄里,文件擴展名是DLL。
二.測試DLL 在客戶端,用VISUAL C#調用剛才我們生成的組件,按照以下幾步即可。
1.新建一個控制應用程序
選擇File->New->Project->Visual C# Projects->Console Application。我們就通過這個控制應用程序來測試我們的組件。
2.為Namespace(名稱空間)添加引用
打開Project->Add reference,瀏覽到剛才生成的DLL,然后按OK。
添加引用向導將會把引用加到當前的工程文件的類里。
3.調用mcMath名稱空間,創建mcMathComp對象,并且調用它的方法和屬性
按照下面的步驟就可以方便的調用方法和屬性。
(1)使用namespace,使用mcMath;
(2)創建mcMathComp對象;
mcMathComp cls = new mcMathComp();
(3)調用方法和屬性;
mcMathComp cls = new mcMathComp(); long lRes = cls.Add( 23, 40 ); cls.Extra = false;
下面是完整的程序代碼:
namespace mcClient { using System; using mcMath; public class Class1 { public Class1() { } public static int Main(string[] args) { mcMathComp cls = new mcMathComp(); long lRes = cls.Add( 23, 40 ); cls.Extra = false; return 0; } } }
至此我們就完成了一個組件從制作到測試的全部工作。
|