【问题标题】:How to make VS2019 not create folder 'net5.0' for building project?如何使 VS2019 不为构建项目创建文件夹“net5.0”?
【发布时间】:2021-11-01 15:51:54
【问题描述】:

我在 VS 2019 中使用 TargetFramework .NET 5.0 (NET Core) 创建了一个解决方案(带有 1 个项目)。我将 OutputPath(在项目的属性中)设置为 'bin\SomeMyFolder' 并希望我的所有输出文件都在那里。但事实证明,在文件夹“SomeMyFolder”中放置了其他文件夹“net5.0”,而我的文件在其中。我从未见过这种由 VS 以前创建的自定义文件夹以及其他 .Net Framework 版本。有什么方法可以禁用 VS 2019 创建该文件夹并在我设置的那个文件夹中构建我的项目(直接进入 SomeMyFolder)? P.S:请不要在构建后事件中提供一些脚本,例如 'copy SomeMyFolder\net5.0 -> SomeMyFolder | rmdir SomeMyFolder'

【问题讨论】:

  • 这不是 Visual Studio 问题,无法更改。 .NET 5 是 .NET Core 5,而不是 .NET Framework 5,并且使用完全不同的构建系统,允许针对多个运行时和操作系统。在所有 .NET Core 项目中,构建将创建一个特定于版本的文件夹
  • I have never seen such custom folders 相反,它们出现在所有 NET Core 项目中。他们不是习俗。 other .Net Framework version. 你不再以 .NET Framework 为目标
  • Please, do not advise 为什么要更改默认路径?您是否遇到过发布或打包脚本等实际问题?然后您需要更改该脚本
  • 重申 Panagiotis 的评论,这是 feature of .NET不是 Visual Studio。从 .NET Core 开始,所有 .NET 项目的输出都是这样的。

标签: c# .net visual-studio-2019 .net-5


【解决方案1】:

这可以通过添加这样的属性组在您的 csproj 文件中禁用。

<PropertyGroup>
  <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
</PropertyGroup>

更多信息:https://docs.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#appendtargetframeworktooutputpath

【讨论】:

  • 感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2018-08-18
  • 2013-04-26
  • 1970-01-01
  • 2020-06-10
  • 2017-01-27
  • 2019-02-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多