2011-10-11 39 views
4

當我需要爲庫添加引用時,我總是被告知要使用「添加現有項目」方法,並在我的解決方案中引用項目本身。在項目中添加庫引用的建議是什麼?

但是,在我的新公司,使用另一種方法。他們有一個服務器,它保存已編譯的DLL,並保留它們的版本,以便在更改對於重構舊應用程序太重要時,它們可以引用舊版本。

雖然我覺得這個系統真的很複雜(我猜如果一個指向舊版本dll的程序被更新並且需要對這個dll進行一些更改,那麼這個系統會有很多工作),但他們似乎覺得這很方便。

這是什麼最佳實踐?直接鏈接dll?鏈接該項目?爲什麼?任何信息都歡迎!

在此先感謝!

回答

2

當你想同時在圖書館工作時,你會把它作爲一個項目加入。而這種情況主要發生在將隨程序(bin文件夾)分發的小型(ish)庫中。

當程序集(將要)安裝在GAC中,因此具有其自己的發佈週期時,僅引用該二進制文件就更有意義。

以上幾種組合也是可能的。

4

我通常會將已編譯的dll的副本(如果源項目不可用或不需要源代碼)放到解決方案中的文件夾中,然後引用它。我檢查它是否與我的項目一起來源控制。

我,你應該能查出來的項目,並直接從源頭控制建設,而不必去打獵的dll等,當你想引用一個library project

3

Add existing project方法是有用的意見這是並排開發的,你想要test/use這是typesmethods這個(Add existing project)方法將不會被用來添加pre-compileddll)文件的引用。

閱讀Project Reference(MSDN)的文章。

1

添加編譯的DLL主要是當代碼或多或少鎖定(體系結構級別的代碼),你未落改變 例如

1)通信層(遠程處理/ WCF)

2)通用桂層(嚮導/對話框)

3)安全層(阿茲曼的東西)

你只需要在你的產品走向另一個方向來改變說它使用使用.NET遠程處理的COMMUNICAT現在它將使用WCF

當您經常更改引用的項目時使用項目作爲參考 此外,Visual Studio可以很好地完成構建項目的順序。

1

儘管貴公司的方法在Microsoft開發人員中可能不是很常見,但它在Java世界中的使用相當成功。從長遠來看,它可能比其他任何方法都有更好的控制,但是如果沒有相當數量的支持腳本/程序(例如,在需要時自動更新項目/解決方案),它很容易變得難以管理。在Java世界中,它被諸如Maven等工具直接支持。

相關問題