工程文件csproj使用編譯條件指定屬性


csproj工程文件中有很多xml格式的屬性,比如PropertyGroup、ItemGroup,某些屬性操作默認是全部的或者是當前編譯條件的而已,當我們想指定某些屬性只在某個編譯條件下發生時就可以通過以下xml屬性來指定:

Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'" 或者 Condition=" '$(Configuration)' == 'Debug' "

例如,Release和Debug都附帶有xml注釋文檔,則這樣解決:

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

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <DocumentationFile>bin\Debug\netstandard2.0\XXXX.xml</DocumentationFile>
  </PropertyGroup>

再例如,你Debug運行需要包含項目文件,即“復制到輸出目錄”為“如果較新則復制”/“始終復制”,但是Release或發布到生產環境時又不希望包含進去(不包含狗血、烏龍的迭代事件就少了),可以這樣做:

<ItemGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <None Update="Assets\Xxxx.key">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
</ItemGroup>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM