在 csproj 的 OutputPath 中使用 $(TargetName) 或 $(ProjectName)
Use $(TargetName) or $(ProjectName) in OutputPath of csproj
我正在尝试将我的 C# 项目的 <OutputPath>
设置为项目名称,但是当项目构建时,它只解析 $(SolutionDir)
而不是 $(ProjectName)
或更好$(TargetName)
.
如何在 <OutputPath>
中使用目标名称?
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>$(SolutionDir)bin\Release\plugins$(ProjectName)</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
我发现您可以在完整的 csproj 中使用属性组中使用的已定义属性。
所以我用了$(AssemblyName)
:
<OutputPath>$(SolutionDir)bin\Release\plugins$(AssemblyName)</OutputPath>
我正在尝试将我的 C# 项目的 <OutputPath>
设置为项目名称,但是当项目构建时,它只解析 $(SolutionDir)
而不是 $(ProjectName)
或更好$(TargetName)
.
如何在 <OutputPath>
中使用目标名称?
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>$(SolutionDir)bin\Release\plugins$(ProjectName)</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
我发现您可以在完整的 csproj 中使用属性组中使用的已定义属性。
所以我用了$(AssemblyName)
:
<OutputPath>$(SolutionDir)bin\Release\plugins$(AssemblyName)</OutputPath>