2012-08-10 45 views
2

我想在我的項目(這是一個應用程序)中創建多個類文件之一的dll,以便它可以被其他編程語言使用。我無法將其與項目的其他部分隔離,因爲它依賴於某些部分。我的問題是,如何將這個cs文件編譯成一個DLL以及所有必需的命名空間,包括我在頂部說的「使用」?謝謝如何從當前應用程序創建DLL

+0

我試圖從類 – MasterGberry 2012-08-10 15:45:37

回答

3

如果您有許多不同的應用程序中使用的代碼,您應該將其移至單獨的程序集中。創建一個新的項目(文件 - >新建項目 - >類庫),並讓代碼生活在那裏。然後,您可以從您需要的任何其他解決方案中引用該DLL。您還可以將項目添加到正在進行的解決方案並執行相同的操作(右鍵單擊解決方案 - >添加 - >新建項目 - >類庫) 。然後只需引用項目本身(右鍵單擊「引用」 - >「解決方案」 - >選擇項目)。確切的菜單選擇在VS2010和2012之間有所不同,但我認爲你會得到一般想法。

這種重複使用代碼而不復制它的行爲是DRY coding的基本做法之一 - 從不復制和粘貼代碼。總是重構,以便可以在兩個完全不同的地方引用同一段代碼。如果你不使用這種技術,你最終會得到兩個不同版本的「相同」代碼,這是一個維護噩夢。

+1

做一個dll Noooooooo一分鐘打我:) – 2012-08-10 15:46:21

+0

好吧,我改變了我的解決方案的新項目......但它需要訪問其他項目的文件命名空間,如何鏈接那些在?編輯:nvm – MasterGberry 2012-08-10 15:51:35

0

您可以創建一個Class Library,當您「調試」時爲您創建.dll文件。按照教程here瞭解如何製作一個。如果它已經在你的項目中去

您的解決方案 - >添加項目 - >新建 - >並選擇「類庫」

然後在你的項目中去,以資源 - >添加 - >項目 - >您的類庫名

資源 - >添加 - >瀏覽 - >您的類庫的位置

希望這有助於!

0

你是否想使用csc.exe 如果是這樣你可以按照這個例子的樣子一定要用你自己的.cs文件名替換名字我還會在MSDN中包含一個下面的鏈接來解釋如何使用CSC.EXE Command-line Building With csc.exe

csc /t:library source.cs -> source.dll 
0

步驟1 右擊解決方案 - >添加 - >新建項目 - >將它命名爲 - >添加它。

第2步 按住shift鍵的同時拖動要移動到新項目中的cs文件。這將是移動,而不會在原來的項目留下複印件

步驟3 在原裝配右擊Refereces - >添加引用 - >從項目選項卡中選擇新添加的項目。

步驟4 當你要訪問的移動組件,轉到頁的頂部寫 用跟隨你的通用組件的命名空間。

嘗試在多個應用程序中重用代碼是一個好主意。一旦你按照這些步驟來構建應用程序,新添加的項目就會編譯成一個單獨的dll。但是,如果依賴於原始項目中的代碼,您仍然無法在其他應用程序中使用該dll。如果您打算重用一段代碼,提前計劃並儘可能以通用方式編寫代碼是一個不錯的主意。嘗試將您的應用程序特定的邏輯放在一個程序集(project/dll)中,並在第二個程序集(project/dll)中放置通用邏輯,然後通過引用該項目並在要添加的文件頂部添加using語句從中訪問該DLL。