[fix]Config创建默认配置文件的开关Runtime.CreateConfigOnMissing,仅需对自动创建生效,而不应该阻止用户主动Save
智能大石头 authored at 2024-08-09 00:30:41 石头 committed at 2024-08-10 14:22:24
11.13 KiB
X
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="Current">
  <PropertyGroup>
    <TargetFrameworks>net20</TargetFrameworks>
    <AssemblyName>NewLife.Core</AssemblyName>
    <RootNamespace>NewLife</RootNamespace>
    <AssemblyTitle>NewLife组件核心库</AssemblyTitle>
    <Description>Core basic components: log (file / network), configuration (XML / JSON / HTTP), cache (memory / redis), network (TCP / UDP / HTTP), RPC framework, serialization (binary / XML / JSON), APM performance tracking. 核心基础组件,日志(文件/网络)、配置(XML/Json/Http)、缓存(内存/Redis)、网络(Tcp/Udp/Http)、RPC框架、序列化(Binary/XML/Json)、APM性能追踪。</Description>
    <Company>新生命开发团队</Company>
    <Copyright>©2002-2024 NewLife</Copyright>
    <VersionPrefix>10.10</VersionPrefix>
    <VersionSuffix>$([System.DateTime]::Now.ToString(`yyyy.MMdd`))</VersionSuffix>
    <Version>$(VersionPrefix).$(VersionSuffix)</Version>
    <FileVersion>$(Version)</FileVersion>
    <AssemblyVersion>$(VersionPrefix).$([System.DateTime]::Now.ToString(`yyyy.MMdd`))</AssemblyVersion>
    <OutputPath>..\Bin</OutputPath>
    <GenerateDocumentationFile>True</GenerateDocumentationFile>
    <LangVersion>latest</LangVersion>
    <!--<Nullable>enable</Nullable>-->
    <ImplicitUsings>enable</ImplicitUsings>
    <SignAssembly>True</SignAssembly>
    <AssemblyOriginatorKeyFile>..\Doc\newlife.snk</AssemblyOriginatorKeyFile>
    <NoWarn>1701;1702;NU5104;NETSDK1138;CS7035;CS1591</NoWarn>
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
    <DefineConstants>$(DefineConstants);__WIN__;NET40;NET45</DefineConstants>
  </PropertyGroup>
  <PropertyGroup>
    <PackageId>$(AssemblyName)</PackageId>
    <Authors>$(Company)</Authors>
    <PackageProjectUrl>https://newlifex.com/core</PackageProjectUrl>
    <PackageIcon>leaf.png</PackageIcon>
    <RepositoryUrl>https://github.com/NewLifeX/X</RepositoryUrl>
    <RepositoryType>git</RepositoryType>
    <PackageTags>新生命团队;X组件;NewLife;$(AssemblyName)</PackageTags>
    <PackageReleaseNotes>新增TimerProvider支持修正绝对定时器时间差;Binary二进制序列化支持完整时间;新增ProcessHelper;改进IJsonHost;新增CreateConfigOnMissing减少配置文件</PackageReleaseNotes>
    <PackageLicenseExpression>MIT</PackageLicenseExpression>
    <PublishRepositoryUrl>true</PublishRepositoryUrl>
    <EmbedUntrackedSources>true</EmbedUntrackedSources>
    <IncludeSymbols>true</IncludeSymbols>
    <SymbolPackageFormat>snupkg</SymbolPackageFormat>
    <PackageReadmeFile>Readme.MD</PackageReadmeFile>
  </PropertyGroup>
  <ItemGroup>
    <Using Include="System.Net.Http" />
  </ItemGroup>
  <ItemGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">
    <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFramework)'=='net5.0-windows' or '$(TargetFramework)'=='net6.0-windows' or '$(TargetFramework)'=='net7.0-windows'">
    <FrameworkReference Include="Microsoft.WindowsDesktop.App.WindowsForms" IsImplicitlyDefined="true" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFramework)'!='netstandard2.1'">
    <!--<PackageReference Include="System.Management" Version="6.0.0" />-->
  </ItemGroup>

  <ItemGroup Condition="'$(TargetFramework)'=='net461' or '$(TargetFramework)'=='netstandard2.0'">
    <!--<PackageReference Include="IndexRange" Version="1.0.2" />-->
    <!--<PackageReference Include="System.Memory" Version="4.5.5" />-->
  </ItemGroup>
  <ItemGroup Condition="'$(TargetFramework)'=='net45' or '$(TargetFramework)'=='net461'">
    <!--<PackageReference Include="System.Net.Http" Version="4.3.4" />-->
    <!--<PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" />-->
    <PackageReference Include="System.ValueTuple" Version="4.5.0" />
  </ItemGroup>
  <ItemGroup>
    <Compile Remove="Compression\LZMA\**" />
    <Compile Remove="Compression\LZ\**" />
    <Compile Remove="Compression\RangeCoder\**" />
    <Compile Remove="Reflection\IL\**" />
    <Compile Remove="Reflection\快速反射\**" />
    <Compile Remove="Serialization\Base\**" />
    <Compile Remove="Serialization\Event\**" />
    <Compile Remove="Serialization\Info\**" />
    <Compile Remove="Serialization\NameValue\**" />
    <EmbeddedResource Remove="Compression\LZMA\**" />
    <EmbeddedResource Remove="Compression\LZ\**" />
    <EmbeddedResource Remove="Compression\RangeCoder\**" />
    <EmbeddedResource Remove="Reflection\IL\**" />
    <EmbeddedResource Remove="Reflection\快速反射\**" />
    <EmbeddedResource Remove="Serialization\Base\**" />
    <EmbeddedResource Remove="Serialization\Event\**" />
    <EmbeddedResource Remove="Serialization\Info\**" />
    <EmbeddedResource Remove="Serialization\NameValue\**" />
    <None Remove="Compression\LZMA\**" />
    <None Remove="Compression\LZ\**" />
    <None Remove="Compression\RangeCoder\**" />
    <None Remove="Reflection\IL\**" />
    <None Remove="Reflection\快速反射\**" />
    <None Remove="Serialization\Base\**" />
    <None Remove="Serialization\Event\**" />
    <None Remove="Serialization\Info\**" />
    <None Remove="Serialization\NameValue\**" />
  </ItemGroup>
  <ItemGroup>
    <Compile Remove="Collections\ConcurrentDictionary.cs" />
    <Compile Remove="Collections\ConcurrentQueue.cs" />
    <Compile Remove="Collections\ConcurrentStack.cs" />
    <Compile Remove="Collections\ObjectPoolTest.cs" />
    <Compile Remove="Compression\CRC.cs" />
    <Compile Remove="Compression\ICoder.cs" />
    <Compile Remove="Compression\SevenZip.cs" />
    <Compile Remove="Compression\SevenZipEntry.cs" />
    <Compile Remove="Compression\SevenZipFilePart.cs" />
    <Compile Remove="Http\DnsHttpHandler.cs" />
    <Compile Remove="Http\HttpTraceHandler.cs" />
    <Compile Remove="IOModel\HttpStreamClient.cs" />
    <Compile Remove="IOModel\IStreamHandler.cs" />
    <Compile Remove="IOModel\StreamClient.cs" />
    <Compile Remove="IOModel\StreamHttpHandler.cs" />
    <Compile Remove="IO\Json.cs" />
    <Compile Remove="Log\CodeTimer.cs" />
    <Compile Remove="Messaging\ChannelMessage.cs" />
    <Compile Remove="Messaging\CompressionMessage.cs" />
    <Compile Remove="Messaging\DataMessage.cs" />
    <Compile Remove="Messaging\EntitiesMessage.cs" />
    <Compile Remove="Messaging\EntityMessage.cs" />
    <Compile Remove="Messaging\ExceptionMessage.cs" />
    <Compile Remove="Messaging\GroupMessage.cs" />
    <Compile Remove="Messaging\HttpClientMessageProvider.cs" />
    <Compile Remove="Messaging\HttpServerMessageProvider.cs" />
    <Compile Remove="Messaging\IMessageProvider.cs" />
    <Compile Remove="Messaging\Message.cs" />
    <Compile Remove="Messaging\MessageBase.cs" />
    <Compile Remove="Messaging\MessageHeader.cs" />
    <Compile Remove="Messaging\MessageKind.cs" />
    <Compile Remove="Messaging\MethodMessage.cs" />
    <Compile Remove="Messaging\NullMessage.cs" />
    <Compile Remove="Messaging\StringMessage.cs" />
    <Compile Remove="Net\PacketStream.cs" />
    <Compile Remove="Net\SerialTransport.cs" />
    <Compile Remove="Net\Statistics.cs" />
    <Compile Remove="Properties\AssemblyInfo.cs" />
    <Compile Remove="Properties\AssemblyInfo_.cs" />
    <Compile Remove="Reflection\ApiHook.cs" />
    <Compile Remove="Reflection\AsmX86.cs" />
    <Compile Remove="Reflection\CodeDomDuckTypeGenerator.cs" />
    <Compile Remove="Reflection\DuckTyping.cs" />
    <Compile Remove="Reflection\EmitReflect.cs" />
    <Compile Remove="Remoting\EntityMessage.cs" />
    <Compile Remove="Remoting\MethodMessage.cs" />
    <Compile Remove="Remoting\RemotingClient.cs" />
    <Compile Remove="Remoting\RemotingMessage.cs" />
    <Compile Remove="Remoting\RemotingMessageHandler.cs" />
    <Compile Remove="Remoting\RemotingMessageType.cs" />
    <Compile Remove="Remoting\RemotingStreamHandler.cs" />
    <Compile Remove="Security\AsnKeyBuilder.cs" />
    <Compile Remove="Security\AsnKeyParser.cs" />
    <Compile Remove="Security\BerDecodeError.cs" />
    <Compile Remove="Security\BigInteger.cs" />
    <Compile Remove="Security\DataHelper.cs" />
    <Compile Remove="Serialization\Json\JsonTest.cs" />
    <Compile Remove="Serialization\Protocol.cs" />
    <Compile Remove="Serialization\RWKinds.cs" />
    <Compile Remove="Serialization\RWService.cs" />
    <Compile Remove="Serialization\XSerializationException.cs" />
    <Compile Remove="Threading\Collections\ArrayList.cs" />
    <Compile Remove="Threading\Collections\Comparer.cs" />
    <Compile Remove="Threading\Collections\SortedList.cs" />
    <Compile Remove="Threading\ThreadPriority.cs" />
    <Compile Remove="Threading\ThreadX.cs" />
    <Compile Remove="Threading\Timer.cs" />
    <Compile Remove="Threading\TimerCallback.cs" />
    <Compile Remove="Web\HttpState.cs" />
    <Compile Remove="Web\Js.cs" />
    <Compile Remove="Windows\MySpeech.cs" />
    <Compile Remove="Windows\SerialPortList.cs" />
    <Compile Remove="Windows\SerialPortList.designer.cs" />
    <Compile Remove="Xml\XmlEntity.cs" />
    <Compile Remove="Xml\XmlReaderWriterSettings.cs" />
    <Compile Remove="Xml\XmlReaderX.cs" />
    <Compile Remove="Xml\XmlWriterX.cs" />
  </ItemGroup>
  <ItemGroup>
    <EmbeddedResource Remove="Windows\SerialPortList.resx" />
  </ItemGroup>
  
  <ItemGroup>
    <Reference Include="Microsoft.VisualBasic" />
    <Reference Include="System.Management" />
    <Reference Include="System.ServiceProcess" />
    <Reference Include="System.Web" />
    <Reference Include="System.Windows.Forms" />
  </ItemGroup>

  <ItemGroup>
    <None Remove="IOModel\数据流总线模型.cd" />
    <None Remove="Messaging\消息总线模型.cd" />
    <None Remove="Remoting\ApiClient.cd" />
    <None Remove="Remoting\ApiServer.cd" />
    <None Remove="Serialization\序列化_写入器.png" />
    <None Remove="Serialization\序列化_读取器.png" />
    <None Remove="Serialization\序列化架构.edx" />
    <None Remove="Serialization\说明.txt" />
    <None Remove="Serialization\读写器模型.cd" />
    <None Remove="UpdateInfo.txt" />
    <None Remove="X组件.txt" />
    <None Remove="说明.txt" />
  </ItemGroup>

  <ItemGroup>
    <Compile Include="..\XAgent\AgentServiceBase.cs" Link="Agent\AgentServiceBase.cs" />
    <Compile Include="..\XAgent\IAgentService.cs" Link="Agent\IAgentService.cs" />
    <Compile Include="..\XAgent\ServiceHelper.cs" Link="Agent\ServiceHelper.cs" />
    <Compile Include="..\XAgent\Setting.cs" Link="Agent\Setting.cs" />
  </ItemGroup>
  <ItemGroup>
    <Content Include="..\Doc\leaf.png" Link="leaf.png" PackagePath="\" />
  </ItemGroup>
  <ItemGroup>
    <EmbeddedResource Include="Windows\MySpeech.cs" />
  </ItemGroup>
  <ItemGroup>
    <None Include="..\Readme.MD">
      <Pack>True</Pack>
      <PackagePath>\</PackagePath>
    </None>
  </ItemGroup>
  <ItemGroup>
    <Folder Include="IOModel\" />
    <Folder Include="Properties\" />
  </ItemGroup>

</Project>