3 回答

TA貢獻1813條經驗 獲得超2個贊
log4net.dll的大小為95KB。即使您將其部署100次,對于今天的硬盤也沒什么關系。我出于某些原因嘗試盡可能避免使用GAC:
這使部署變得更加困難,您必須告訴安裝程序要放入GAC中的內容。我喜歡創建簡單的xcopy設置(復制要安裝的目錄,刪除要卸載的目錄)的可能性。因為這很簡單-但是一旦您必須將其放入GAC中就無法正常工作。
您必須在程序集上簽名。只是讓他們進入GAC...。
一旦開發人員在其Visual Studio項目中引用了GAC的某些內容,則當另一位開發人員在其PC上打開解決方案時,該引用將丟失。他必須首先將所需的程序集放入GAC,然后才能成功打開和編譯解決方案。那是真正的PITA。我希望能夠簽出,編譯和運行而不會出現錯誤。

TA貢獻1840條經驗 獲得超5個贊
您應該考慮放入GAC中的唯一種類的組件是成熟且穩定的組件。對于log4net,如果您對所擁有的版本穩定,成熟感到滿意,并且不太可能很快更改該版本,請隨時將其放入GAC。
不要試圖將可能會更改的庫放置在GAC中,特別是如果您是在內部開發它們,并且仍有進一步改進的余地。而是將它們部署為私有程序集。
我見過人們傳播共享代碼的奇跡。他們說諸如“啊,通過此代碼更改,我們將同時改進20個應用程序”。問題是,如果弄錯了,您還可以同時銷毀20個應用程序。我已經看到有人說“我剛剛啟動了站點X。請問您可以檢查站點AW以確保它們仍然可以工作嗎?”。
專用程序集可能會很痛苦,但是您可能會遇到的問題僅限于針對它們部署的特定應用程序。如果您不能100%確定裝配是否穩定且不成熟,請不要將其放入GAC中。
相信我,你會睡得更好。
- 3 回答
- 0 關注
- 481 瀏覽
添加回答
舉報