如何更精准地设置 C# / .NET Core 项目的输出路径?(包括添加和删除各种前后缀)

如何更精准地设置 C# / .NET Core 项目的输出路径?(包括添加和删除各种前后缀)

💡 原文中文,约1600字,阅读约需4分钟。
📝

内容提要

本文介绍如何通过设置属性影响项目输出路径,避免生成意料之外的子文件夹。输出路径由多个属性组成,包括 $(BaseOutputPath)、$(PlatformName)、$(Configuration)、$(RuntimeIdentifier)和$(TargetFramework)等。可以通过设置这些属性来定制输出路径。建议阅读原文避免陈旧错误知识的误导。

🎯

关键要点

  • 通过在 Visual Studio 中设置输出路径可以更改项目输出文件的位置。
  • 对于 .NET Core 的 Sdk 风格 csproj 格式,生成路径可能会包含子文件夹,如 netcoreapp3.0 或 net472。
  • 可以通过设置属性来避免生成意料之外的子文件夹。
  • OutputPath 属性由多个部分组成,包括 $(BaseOutputPath)、$(PlatformName)、$(Configuration)、$(RuntimeIdentifier) 和 $(TargetFramework)。
  • $(BaseOutputPath) 的默认值是 bin,可以修改。
  • $(PlatformName) 的默认值是 $(Platform),而 $(Platform) 的默认值是 AnyCPU。
  • $(Configuration) 的默认值是 Debug。
  • $(RuntimeIdentifier) 和 $(PlatformTarget) 互为默认值,可以通过 $(AppendRuntimeIdentifierToOutputPath) 控制是否加入输出路径。
  • $(TargetFramework) 是强制要求的属性,必须在 csproj 文件中指定。
  • 建议阅读原文以避免陈旧错误知识的误导。
➡️

继续阅读