如何在解决方案根目录添加 'src' 文件夹
How to add 'src' folder at solution root
这听起来像是一个愚蠢的问题,但 Visual Studio 似乎并没有让我做这个我一直在 github 上看到的简单组织。
我从新的空解决方案开始。
然后我想添加一个 "src" 文件夹,其中将包含项目多个项目。如果我右键单击 select "Add Folder" VS 添加一个虚拟文件夹,而不是实际文件夹。
如果我使用 Windows 资源管理器在所需位置创建一个新文件夹,VS 会忽略它并且不允许我 "Add to solution"
如果我添加一个项目,它会将项目添加到根目录,而不是所需的文件夹中。
那么,我该如何添加这个文件夹呢?
您可以使用解决方案资源管理器中的文件夹视图选项并创建一个映射到文件驱动器的 src 文件夹,然后在其下创建项目。
我设法做到了,虽然有点 "cheat"。
创建名为 "src"
的解决方案文件夹
在文件资源管理器中,还要在解决方案文件夹中创建名为 "src" 的文件夹
现在,当您将新项目添加到解决方案时,请将其添加到 "solution_folder\src",因为 "src" 现在存在于磁盘上。此时,在解决方案视图中,这个项目实际上会显示在"src"文件夹之外。
只需将该项目拖到解决方案结构中的 "src" 文件夹中,您就会在解决方案视图和实际的 "src" 文件夹下找到它] 磁盘上的文件夹。
请注意,解决方案视图中的 "src" 文件夹与磁盘上的 "src" 文件夹不同,一个是解决方案文件夹,另一个是文件系统中的实际文件夹,但是您的结构来自解决方案视图将遵循文件系统中的结构。
希望对您有所帮助:)
所以这就是我在 Visual Studio 2019 年完成这项工作的方法。首先这是最终结果:
要到达那里需要一些命令行。首先打开命令 window 并更改为您的应用程序的本地根文件夹。在我的例子中是 C:\Code\NameOfCoolApp.
进入应用程序的根文件夹后,输入:
dotnet new sln
您应该得到类似于 已成功创建模板“解决方案文件”。
接下来,我们将在解决方案中删除您的项目之一,因此请使用此处的任何命名约定。就我而言,我们将存根 Domain 项目。因此,从同一个命令 window,输入:
dotnet new classlib -o src/NameOfCoolApp.Domain
然后您应该会看到类似 模板“Class 库”已成功创建 并以 恢复成功 结束。
接下来,我添加一个存根单元测试:
dotnet new mstest -o tests/Domain.UnitTests
收到成功消息后,我们将从以下内容开始将以上两项添加到解决方案中:
dotnet sln add src/NameOfCoolApp.Domain
最后:
dotnet sln add tests/Domain.UnitTests
从这里您应该能够使用 VS2019 打开解决方案文件,并且可以在 Visual Studio.
中继续您项目的其余部分
这听起来像是一个愚蠢的问题,但 Visual Studio 似乎并没有让我做这个我一直在 github 上看到的简单组织。
我从新的空解决方案开始。
然后我想添加一个 "src" 文件夹,其中将包含项目多个项目。如果我右键单击 select "Add Folder" VS 添加一个虚拟文件夹,而不是实际文件夹。
如果我使用 Windows 资源管理器在所需位置创建一个新文件夹,VS 会忽略它并且不允许我 "Add to solution"
如果我添加一个项目,它会将项目添加到根目录,而不是所需的文件夹中。
那么,我该如何添加这个文件夹呢?
您可以使用解决方案资源管理器中的文件夹视图选项并创建一个映射到文件驱动器的 src 文件夹,然后在其下创建项目。
我设法做到了,虽然有点 "cheat"。
创建名为 "src"
的解决方案文件夹
在文件资源管理器中,还要在解决方案文件夹中创建名为 "src" 的文件夹
现在,当您将新项目添加到解决方案时,请将其添加到 "solution_folder\src",因为 "src" 现在存在于磁盘上。此时,在解决方案视图中,这个项目实际上会显示在"src"文件夹之外。
只需将该项目拖到解决方案结构中的 "src" 文件夹中,您就会在解决方案视图和实际的 "src" 文件夹下找到它] 磁盘上的文件夹。
请注意,解决方案视图中的 "src" 文件夹与磁盘上的 "src" 文件夹不同,一个是解决方案文件夹,另一个是文件系统中的实际文件夹,但是您的结构来自解决方案视图将遵循文件系统中的结构。
希望对您有所帮助:)
所以这就是我在 Visual Studio 2019 年完成这项工作的方法。首先这是最终结果:
要到达那里需要一些命令行。首先打开命令 window 并更改为您的应用程序的本地根文件夹。在我的例子中是 C:\Code\NameOfCoolApp.
进入应用程序的根文件夹后,输入:
dotnet new sln
您应该得到类似于 已成功创建模板“解决方案文件”。
接下来,我们将在解决方案中删除您的项目之一,因此请使用此处的任何命名约定。就我而言,我们将存根 Domain 项目。因此,从同一个命令 window,输入:
dotnet new classlib -o src/NameOfCoolApp.Domain
然后您应该会看到类似 模板“Class 库”已成功创建 并以 恢复成功 结束。
接下来,我添加一个存根单元测试:
dotnet new mstest -o tests/Domain.UnitTests
收到成功消息后,我们将从以下内容开始将以上两项添加到解决方案中:
dotnet sln add src/NameOfCoolApp.Domain
最后:
dotnet sln add tests/Domain.UnitTests
从这里您应该能够使用 VS2019 打开解决方案文件,并且可以在 Visual Studio.
中继续您项目的其余部分