我想在當前的.NET 4.5項目中引用一堆程序集(DLL)。但是,現在他們都坐在我的硬盤上的某個本地文件夾中。當有人在同一個項目上工作時,這些引用程序集顯然不在同一個本地文件夾中。我的計劃是將這些程序集複製到我的項目中的某個文件夾中,並將其放入源代碼管理中。在.NET項目中複製引用程序集的位置?
這是一個很好的計劃嗎?這些東西通常用於什麼文件夾?
我想在當前的.NET 4.5項目中引用一堆程序集(DLL)。但是,現在他們都坐在我的硬盤上的某個本地文件夾中。當有人在同一個項目上工作時,這些引用程序集顯然不在同一個本地文件夾中。我的計劃是將這些程序集複製到我的項目中的某個文件夾中,並將其放入源代碼管理中。在.NET項目中複製引用程序集的位置?
這是一個很好的計劃嗎?這些東西通常用於什麼文件夾?
NuGet是一種更喜歡的方法;但是,一些程序集不在NuGet中。所以這裏是nopCommerce所做的一個例子。
GAC所有DLL程序集的更好的方法。
http://msdn.microsoft.com/en-us/library/ex0ss12c(v=vs.80).aspx
gacutil -i "DLL File Path"
這將把DLL只在他的機器上。他希望這些DLL成爲項目的一部分,因此其他任何工作的人都會將它們引用到項目文件中。此外,還簡化了部署。 – Floremin 2013-03-26 18:42:00
絕對是一個好主意。通常,我會在解決方案的頂層(或者如果有的話)更高的「依賴關係」目錄以及項目使用的所有DLL。這些都在源代碼控制中,所以當你檢查代碼時,它將會按原樣工作,因爲這些DLL都是相對於項目的。
NuGet是使用外部庫的最常見方式,它將依賴關係放置在解決方案文件夾根目錄下名爲Packages的文件夾中。您可以爲非nuget依賴項創建一個名爲dependencies的文件夾。通過將此文件夾放置在解決方案的根目錄下,您可以製作相關參考,以便適用於所有人。
身在的NuGet包這些依賴?如果是這樣,您可以自行排除二進制文件,但包含軟件包配置,其他軟件將能夠自動提取軟件包。 – 2013-03-26 18:38:18
在Visual Studio中右鍵單擊並選擇添加引用或將其複製到bin文件夾中 – 2013-03-26 18:38:24
要擴展@JonSkeet的評論,如果他們不在NuGet包中,我強烈推薦在NuGet包中使用_putting_。開始使用我的內部庫程序集完成此操作,極大地簡化了我的依賴管理。 – Cerebrate 2013-03-26 18:41:20