使用Visual Studio for Mac在解决方案资源管理器中复制客户端文件

时间:2018-06-07 03:04:33

标签: angular visual-studio asp.net-core visual-studio-mac

使用dotnet cli v2.1.4我使用dotnet new --install Microsoft.DotNet.Web.Spa.ProjectTemplates::2.0.0下载了Spa模板。然后我使用dotnet new angular -o my-project创建了一个角度项目。然后我打开Visual Studio for Mac并打开cli为上述项目生成的.csproj文件。解决方案已呈现,但遗憾的是客户端文件全部重复,即使每个文件只有一个副本出现在查找程序中或使用目录中的ls。我发现了threads有关建议卸载项目的相关问题等等。我尝试了这些解决方案,但遗憾的是问题仍然存在,请参阅附图。服务器端文件不重复。 Screenshot of duplicate files

3 个答案:

答案 0 :(得分:5)

问题是Angular项目文件定义了重复的None项。与Windows上的Visual Studio不同,Visual Studio for Mac不会隐藏这些重复的项目。

如果编辑.csproj文件并添加<None Remove="$(SpaRoot)**" />,则重复文件将不会显示在Visual Studio for Mac的“解决方案”窗口中。

<ItemGroup>
  <!-- Don't publish the SPA source files, but do show them in the project files list -->
  <Content Remove="$(SpaRoot)**" />
  <None Remove="$(SpaRoot)**" /> <!-- This has been added -->
  <None Include="$(SpaRoot)**" Exclude="$(SpaRoot)node_modules\**" />
</ItemGroup>

在上面的ItemGroup中,仅从SpaRoot目录中删除了Content项目,该目录是ClientApp文件夹。

答案 1 :(得分:1)

我的.csproj文件中包含以下内容,已将其删除:

<ItemGroup>
    <None Include="**/*" />
</ItemGroup>

答案 2 :(得分:0)

我能够通过将文件夹ClientApp移出项目目录,然后从项目中删除它来解决这个问题。然后我将其移回并再次将其包含在项目中,这次文件不再重复。