簡體   English   中英

在多個項目之間共享C#類源代碼

[英]Share c# class source code between several projects

我編寫了一個類,該類將處理應用程序中的內部日志記錄。 現在,我想在另一個完全獨立的新項目中使用此類。

我可以簡單地將文件復制到新的項目文件夾中,但是我只想保留一個副本,這樣隨着時間的推移,對它的所有更改都將應用於兩個項目。

我可以使用“添加現有文件”,但是在哪里放置文件,以便下一位開發人員知道它是必需的。 我曾經有一個“共享”文件夾,但是有一次沒有將該文件夾帶入下一台開發計算機。

最好的組織方式是什么,以便對新維護人員而言最有意義,並最大程度地減少項目中斷開鏈接的風險。

您可以創建一個具有此類的庫項目,而您要做的就是添加對該項目的引用。

如果那不是選項,則可以使用“右鍵單擊->添加現有項目->添加為鏈接”,這樣您只有一個代碼副本,但是它可以存在於多個項目中。

共享的類庫是最好的解決方案。

但是您可以將文件添加為VS項目的鏈接,而不是復制文件。 為此,請使用添加現有項目對話框的添加按鈕上的下拉菜單。

如果您實際上需要共享源代碼,例如,如果您同時具有同一程序集的32位和64位版本(如果您依賴於本機代碼,則需要多次),則可以使用給出的答案在此線程中: 如何在Visual Studio中的項目/解決方案之間共享代碼?

(在兩個項目之間尋找“鏈接”代碼文件)。

將您的日志記錄代碼拆分為一個單獨的程序集。

然后,您可以將該程序集包含在應使用該記錄器的項目中。

它使所有內容保持整潔,您只需要維護一組代碼,而不必擔心每個副本。

將類放在唯一的命名空間中,然后將文件添加為使用它所需的所有項目的鏈接。 確保為將要使用該類的唯一名稱空間放置一個using語句,否則必須完全限定對它的每次使用。 對於這樣的情況,我認為這比確定的情況要好得多,因為它不會生成不必要的跨程序引用,因為這些只是您自己希望在項目之間共享的代碼的一部分。

創建一個包含此類的新程序集。

然后,所有其他項目都可以引用此程序集並在其中使用該類。

您也可以使用版本控制系統來執行此操作。

我們通常使用解決方案和主項目創建目錄,然后將此目錄提交到SVN。 然后,使用svn:external鏈接所有共享庫-所有項目都存在於同一解決方案目錄中。

提交后,任何人都可以簽出具有所有外部依賴關系的有效解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM