2010-09-06 45 views
2

我在Visual Studio中構建了一個庫,並且決定將我的名稱空間結構定義爲CompanyName.Type.Action,例如MyCompany.Common.DataFile。在Visual Studio中製作.NET庫

在Visual Studio中,我通過創建名稱爲MyCompany.Common的新解決方案來完成此任務,然後向MyCompany.Common項目添加類DataFile。

首先,這導致解決方案和項目具有相同的名稱,我不認爲這是最佳實踐。

其次,我最終會在MyCompany.Common項目中獲取大量文件,而不是MyCompany.Common解決方案中的很多項目。

我可以將解決方案重命名爲MyCompany,然後生成一個名爲Common的項目,但在單個項目中仍然會有很多與Common相關的文件。

這是做圖書館的最佳方式嗎? 你們如何去做呢?

回答

1

這取決於您是否要在解決方案中有任何其他項目。解決方案名稱並不重要 - 大部分時間,解決方案只是項目的容器。您可以非常方便地在多個解決方案中擁有相同的項目。

您的項目肯定應該是MyCompany.Common而不僅僅是Common,IMO。不要忘記,生成的程序集和默認名稱空間的名稱默認與項目名稱相同。

+1

只需添加到Jon的答案,您仍然可以使用MyCompany.Common命名空間使用多個項目。一個明智的用法將是一個項目和名稱空間,例如MyCompany.Common.SomeSpecificStuff,您想要分別包含常見的特定內容(但可能很少使用或平臺/數據庫/用戶界面特定)。 – VinayC 2010-09-06 08:18:46

+0

看起來,在項目中使用目錄是一種非常好的做事方式,因爲命名空間繼承了目錄名稱。 – lejon 2010-09-10 08:57:19

1

除非你需要在多個項目中分割你的代碼,否則我會建議你避免這種情況。原因在於,編譯包含許多項目的解決方案需要的時間比只包含少量項目的解決方案花費的時間要長,而且擁有大量dll文件的用戶可能會對使用您的庫的人感到困惑。

現在爲你在做什麼,我會建議命名解決方案,以便你知道它是什麼。對於每個項目,您都可以將默認名稱空間設置爲任何您需要的名稱空間,因此即使您的解決方案名爲MyCompanyLibrary,您的項目也具有默認名稱空間(如MyCompany.Common)。
此外,您可以覆蓋項目中任何文件的建議命名空間,因此如果不想遵循建議的結構,則不必遵循建議的結構。只要你的結構清晰易懂,你應該沒問題。

相關問題