2012-03-29 250 views
4

我已經找過類似的問題,但只能找到解決方案和項目之間的區別。我想,我的水平是相同的,但略有不同。Visual Studio解決方案和項目

我是最近剛剛進入C#的Java開發人員,我是負責設置源代碼控制,項目標準等的唯一個人,這是我第一次使用Visual Studio(使用2010 Pro)。

我知道解決方案是相關項目的「容器」,但我不確定將項目添加到解決方案的最佳實踐,這些解決方案是相關的,但屬於不同類型。

例如,如果他們在功能上相關(而非接近相同),我會將Web項目放在與桌面應用程序或移動應用程序相同的解決方案中嗎?他們基本上是相同的應用程序,但格式不同。他們可能使用相同的類(對於一個人爲的例子,Person類)。

對我來說,它們看起來顯然是相關的,但是是不同的應用程序,所以它看起來應該是不同的解決方案。

我很欣賞提供的任何反饋。

在此先感謝。

+0

謝謝大家的快速回復。似乎共識是將它們放在同一個解決方案中。我確實認爲這是一種比跨多種解決方案更容易,更有效的方式,但並不想違背任何最佳實踐。我知道沒有「規則」,但我儘量保持接近主流。 – dekron 2012-03-29 16:20:03

+0

歡迎來到主流;-) – 2012-03-29 19:31:23

回答

1

這些應用程序應該在一個解決方案中,特別是如果他們共享功能,常見項目等。相當好的方法是使用解決方案文件夾在解決方案中組合項目,例如「Common」,「Web」,「Mobile」 「設置」等。這樣你可以在解決方案中有邏輯組。

1

我會將它們放在同一個解決方案中,因爲這樣可以更容易地將公共類庫作爲該解決方案中的一個項目。

1

對此沒有規定,所以沒有正確或錯誤的答案。這一切都取決於你想如何組織你的代碼。我們通常將Web應用程序和控制檯應用程序放在同一個解決方案中,因爲它們在功能上捆綁在一起並共享代碼,因此項目類型實際上並不重要。

0

我會把它們放在同一個解決方案中。您可以創建不同的配置來構建每個應用程序或同時構建它們兩個。這使您可以更改班級並驗證對班級所做的更改是否適用於這兩種應用程序。

此外,如果您開始看到跨應用程序開始複製功能,則可以更輕鬆地創建可應用於這兩個應用程序的新類和項目。

0

您可以將所有內容都放在一個解決方案中。如果您經常需要一起調試庫和應用程序代碼,這很方便,但如果解決方案有很多項目,它可能會變得笨拙。

一種方法是將解決方案視爲「將作爲一個單元安裝的解決方案」。然後,您的公共圖書館將採用一種解決方案,而您的移動和桌面應用將採用他們自己的解決方案這樣可以將解決方案縮小,但是當您一起開發所有內容時可能會很不方便 - 因此,當庫很穩定時,它的效果最好。

相關問題