我不了解Visual Studio项目和解决方案的概念

时间:2020-03-05 18:51:45  来源:igfitidea点击:

在Eclipse中,我有一个包含所有项目的工作区。每个项目分别构建和编译。一个项目不与另一个项目交互。

这与Visual Studio和那里的项目/解决方案有什么关系?

解决方案

回答

每个VS项目都构建一个EXE或者DLL。该解决方案只是相关项目的集合。

因此,VS项目:Eclipse项目:: VS解决方案:Eclipse工作区。

回答

VS项目是它自己的实体。它会自行构建和编译。解决方案只是包含多个项目的一种方式。这些项目不一定需要其他项目进行编译(尽管它们可以依赖于其他项目)。

这只是让我们从概念上将项目组合到一个大项目中。例如,我们可以有一个单独的测试项目。它取决于实际项目中的代码,应与实际项目一起保存,但不必位于同一exe / dll中。

回答

另一种看待它的方法是,解决方案是项目的容器。对于我的大部分工作,我将每个层创建为解决方案中的一个项目,因此我的树看起来像:

你的旅费可能会改变

回答

@托马斯·欧文斯(Thomas Owens):

是的,一些(大多数?)使用Eclipse的人有多个工作区。当我第一次开始使用Eclipse时,这让我感到最惊讶,所以我在这里回复以使此注释更加可见。

回答

一个解决方案有0个或者多个项目...

回答

以下是可能使我们失望的事情:

在VS2003中,所有内容都有一个Project文件和一个Solution文件。如果我们拥有一个项目的解决方案,则可以打开该解决方案并查看一个项目。如果我们打开该项目,它将尝试创建一个新的解决方案文件来包含该项目。但是Web项目和Winform项目都有项目和解决方案。

在VS2005中,现在默认情况下有所更改,Web项目不再具有Project文件。他们收到了一些不喜欢Project文件的Web开发人员的反馈,他们认为,如果文件位于目录中,则该文件是应用程序的一部分。 VS2005发行后,他们从确实喜欢Project文件概念的开发人员那里获得了更多反馈,因此他们对其进行了修补。这是VS2005中的"网站"与" Web应用程序"(我不记得现在是哪个) 。

此外,在VS2005中,如果打开的解决方案仅包含一个项目,则在解决方案资源管理器中根本看不到甚至有一个解决方案,我们只会看到该项目(就像它不在解决方案中一样) )。只有添加了第二个项目后,我们才会看到包含两个项目的解决方案。

因此,从根本上来说,我们在正确的轨道上解决方案和项目在Visual Studio中的工作原理与在Eclipse中的工作原理相同,只是一些怪癖使事情变得令人困惑。

回答

在Visual Studio 2008中,有太多种类的Web项目。有Web站点项目与Web应用程序项目,它们以不同的方式限制了工作。这是Microsoft提供太多选择而不是专注于一个强大的解决方案的一个很好的例子。即使在网站的Project选项中,也至少有3种不同的方式来编译应用程序。

回答

我发现并非总是在解决方案资源管理器中看到该解决方案很烦人。在选项->项目和解决方案->常规中有一个名为"始终显示解决方案"的设置非常方便。