| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <Project>
- <PropertyGroup>
- <!-- 支持 .NET 6 及以上所有版本 -->
- <TargetFrameworks>net6.0;net7.0;net8.0;net9.0</TargetFrameworks>
- <!-- 公共设置 -->
- <ImplicitUsings>enable</ImplicitUsings>
- <Nullable>enable</Nullable>
- <LangVersion>latest</LangVersion>
- <!-- 生成文档 -->
- <GenerateDocumentationFile>true</GenerateDocumentationFile>
- <NoWarn>$(NoWarn);CS1591</NoWarn>
- <!-- 抑制 XML 注释警告 -->
- <NoWarn>$(NoWarn);CS1591;CS1570;CS1574</NoWarn>
- <!-- 抑制 TFM 不支持警告 -->
- <SuppressTfmSupportBuildWarnings>true</SuppressTfmSupportBuildWarnings>
- </PropertyGroup>
- <!-- Apq.Cfg 特定的 NuGet 包元数据 -->
- <PropertyGroup>
- <Description>统一配置管理库,支持多种配置源</Description>
- <PackageTags>configuration;config;json;yaml;toml;ini;xml;redis;database</PackageTags>
- <PackageReadmeFile>README.md</PackageReadmeFile>
- </PropertyGroup>
- <!-- 导入共享的版本检测逻辑 -->
- <PropertyGroup>
- <VersionsDir>$([System.IO.Path]::Combine($(MSBuildThisFileDirectory), 'versions'))</VersionsDir>
- </PropertyGroup>
- <Import Project="buildTools/Version.props" />
- <!-- 动态选择 README 文件:优先使用版本文件,内容不足5字符时回退到项目 README -->
- <Target Name="SelectReadmeFile" BeforeTargets="_GetPackageFiles" DependsOnTargets="DetectVersionFromFiles">
- <!-- 检查版本文件内容长度 -->
- <CheckFileLength FilePath="$(DetectedVersionFile)" MinLength="5">
- <Output TaskParameter="IsLongEnough" PropertyName="UseVersionFileAsReadme" />
- </CheckFileLength>
- <!-- 如果版本文件内容足够长,使用版本文件 -->
- <ItemGroup Condition="'$(UseVersionFileAsReadme)' == 'true'">
- <_PackageFiles Include="$(DetectedVersionFile)">
- <PackagePath>README.md</PackagePath>
- <BuildAction>None</BuildAction>
- </_PackageFiles>
- </ItemGroup>
- <!-- 否则使用项目目录下的 README.md -->
- <ItemGroup Condition="'$(UseVersionFileAsReadme)' != 'true'">
- <_PackageFiles Include="README.md">
- <PackagePath>README.md</PackagePath>
- <BuildAction>None</BuildAction>
- </_PackageFiles>
- </ItemGroup>
- <Message Text="README 来源: $(DetectedVersionFile) (版本文件)" Importance="high" Condition="'$(UseVersionFileAsReadme)' == 'true'" />
- <Message Text="README 来源: README.md (项目目录)" Importance="high" Condition="'$(UseVersionFileAsReadme)' != 'true'" />
- </Target>
- <!-- 定义版本变量 -->
- <PropertyGroup>
- <MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net6.0'">6.0.0</MicrosoftExtensionsVersion>
- <MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net7.0'">7.0.0</MicrosoftExtensionsVersion>
- <MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net8.0'">8.0.0</MicrosoftExtensionsVersion>
- <MicrosoftExtensionsVersion Condition="'$(TargetFramework)' == 'net9.0'">9.0.0</MicrosoftExtensionsVersion>
- </PropertyGroup>
- </Project>
|