什么是 Visual Studio 中的解决方案文件夹?

61

我有一个Visual Studio 2008的解决方案,我想在解决方案中包含一个真实的文件夹,但不是在项目级别,而是在解决方案级别。

我注意到可以右键单击解决方案并添加解决方案文件夹,但它会出现一些白色的文件夹,我对它的用途有所怀疑......

基本上,在文件系统中我有c:\ mySolution \ myFolder ......

我希望将myFolder添加到解决方案中,以便项目也处于源代码控制之下......

8个回答

46

我也希望能够将物理文件夹添加到解决方案中,但不幸的是,你不能在项目之外这样做。

我发现的最好的解决方案是添加一个与物理文件夹同名的解决方案文件夹(例如你的示例中的 myFolder),然后将物理文件夹中的文件添加到解决方案文件夹中。

然而,Visual Studio没有保持解决方案文件夹和物理文件夹之间的映射,这意味着:

  • 使用 Visual Studio 随后在解决方案文件夹中创建的新文件不会自动放置在物理子文件夹中(我认为它们默认情况下会在解决方案根文件夹中创建)

  • 添加到物理文件夹中的文件在解决方案文件夹中也不会自动显示,即使使用 "Show All Files" 也是如此。

因此,要添加新文件,我总是在 Visual Studio 外部创建新文件,然后使用 "Add/Existing Item" 将其添加到解决方案文件夹中。


1
除了上述“意味着”的列表之外:在解决方案资源管理器中重命名文件将不会按预期工作。我的做法(VS2010):在物理文件夹中重命名,添加到解决方案中,从解决方案中删除旧名称的文件。 - Gerard
2
他们需要添加将其映射到物理文件夹/文件的功能。 - Shawn Mclean

12

我过去所做的是创建一个仅用于保存文件(DLL等)的项目

您也可以这样做。该项目可以命名为您想要创建的文件夹的名称。


2
它是功能性的,但它会向解决方案添加一个项目,在大型项目中,我正在尝试减少混乱。 - Michael L

10

按照以下步骤操作:

  1. 从Visual Studio创建解决方案文件夹。
  2. 右键单击解决方案文件夹,创建一个新项目。
  3. 更改默认路径,在其后添加新的物理文件夹名称并使用反斜杠分隔。例如...C:\Project\Test\New Physical Folder
  4. 单击“确定”按钮来创建该项目。

然后,新项目将被放置在您的新 New Physical Folder 中。


4
你也可以在解决方案文件夹中添加独立的文件,它们将受到源代码控制。但请注意,VS倾向于将这些文件放在与解决方案文件相同的文件夹中 - “解决方案文件夹”是虚拟的,与实际的文件系统文件夹不对应。如果想要真正的文件系统文件夹,你需要自己创建结构,然后选择“添加现有项”。

3
我的首选方案是添加一个共享项目,它类似于一个文件夹但有一个特殊的图标。 Visual studio shared project

3

来自 MSDN:

“如果你在处理包含众多项目的解决方案,你可以使用解决方案文件夹来将相关项目组织成组,然后对这些项目组执行操作。”

解决方案文件夹并不是指作曲家所想的那样。它是用来将大型解决方案组织成组的。

对于你的问题,我认为这是安装项目的工作,收集这些文件:安装说明、全局帮助等等...


2

您可以使用解决方案文件夹来对解决方案中的文件进行分组,但是解决方案文件夹并不表示像其标志所示的磁盘上的文件夹。它可以包含文件引用和项目引用。


0
创建您的解决方案: dotnet new sln -n demoProjectName 例如:您的解决方案文件夹路径 C:\Projects\demoProjectName> 在同一解决方案路径下创建项目: dotnet new classlib -n Persistence 从您的解决方案文件夹路径开始,执行以下操作: C:\Projects\demoProjectName> dotnet sln C:\Projects\demoProjectName\ add C:\Projects\demoProjectName\Persistence\Persistence.csproj
请注意:这里所使用的 Persistence 只是一个占位符,代表您的项目名称。classlib 用于 classLibrary 项目,也可以是控制台项目等等。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接