如何不在 Visual Studio 2019 .csproj 中硬编码 DocumentationFile 路径的路径

How not to hard code the path of the DocumentationFile path in Visual Studio 2019 .csproj

如何设置DocumentationFile动态引用当前用户的主驱动器?是否有一个 $ 变量要设置?我将我的项目签入了 TFS。当我团队的另一个成员将源代码克隆到他的工作站时,.csproj 中的以下节点仍然引用我硬盘上的文件夹,并且编译失败。到目前为止,我们必须手动编辑 .csproj 文件。谢谢。

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <DocumentationFile>C:\Users\myName\source\repos\orgName\solutionName\projectName\.xml</DocumentationFile>
  </PropertyGroup>

Visual Studio中有list个常用宏。

您可能想要的是 $(ProjectDir)

您还可以使用存储在注册表中的环境变量。参见 this

示例:

<FinalOutput>$(BIN_PATH)\MyAssembly.dll</FinalOutput>

<Project DefaultTargets="FakeBuild">
    <PropertyGroup>
        <FinalOutput>$(BIN_PATH)\myassembly.dll</FinalOutput>
        <ToolsPath Condition=" '$(ToolsPath)' == '' ">
            C:\Tools
        </ToolsPath>
    </PropertyGroup>
    <Target Name="FakeBuild">
        <Message Text="Building $(FinalOutput) using the tools at $(ToolsPath)..."/>
    </Target>
</Project>

感谢您的回复。它引导我找到 $(MSBuildProjectDirectory) 变量。这是 PropertyGroup

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <DocumentationFile>$(MSBuildProjectDirectory)\.xml</DocumentationFile>
  </PropertyGroup>