build(client): bump version to 1.2.2 and embed Application/Domain DLLs into NuGet package
- Bump Version, AssemblyVersion, FileVersion from 1.2.0 to 1.2.2 - Mark Application and Domain ProjectReferences as PrivateAssets=all so they are not propagated as transitive dependencies to consumers - Add IncludeReferencedProjectDlls MSBuild target to pack Application.dll and Domain.dll into the correct lib/<tfm>/ path inside the .nupkg - Add CopyProjectReferencesToPackage target (TargetsForTfmSpecificBuildOutput) as the per-TFM companion needed for multi-targeting builds to pick up both referenced project DLLs correctly - Fix stray UTF-8 BOM on the opening Project element
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFrameworks>net462;net480;net8.0</TargetFrameworks>
|
<TargetFrameworks>net462;net480;net8.0</TargetFrameworks>
|
||||||
@@ -11,9 +11,9 @@
|
|||||||
<PackageIcon>icon.png</PackageIcon>
|
<PackageIcon>icon.png</PackageIcon>
|
||||||
<RepositoryUrl>http://git.dd:3000/AppStd/Rec.git</RepositoryUrl>
|
<RepositoryUrl>http://git.dd:3000/AppStd/Rec.git</RepositoryUrl>
|
||||||
<PackageTags>digital data document service api client</PackageTags>
|
<PackageTags>digital data document service api client</PackageTags>
|
||||||
<Version>1.2.0</Version>
|
<Version>1.2.2</Version>
|
||||||
<AssemblyVersion>1.2.0.0</AssemblyVersion>
|
<AssemblyVersion>1.2.2.0</AssemblyVersion>
|
||||||
<FileVersion>1.2.0.0</FileVersion>
|
<FileVersion>1.2.2.0</FileVersion>
|
||||||
<Description></Description>
|
<Description></Description>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
@@ -44,7 +44,34 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\DocumentService.Application\DocumentService.Application.csproj" />
|
<ProjectReference Include="..\DocumentService.Application\DocumentService.Application.csproj">
|
||||||
|
<PrivateAssets>all</PrivateAssets>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\DocumentService.Domain\DocumentService.Domain.csproj">
|
||||||
|
<PrivateAssets>all</PrivateAssets>
|
||||||
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- Embed Application and Domain DLLs into the NuGet package lib folder -->
|
||||||
|
<Target Name="IncludeReferencedProjectDlls" BeforeTargets="_GetPackageFiles" Condition="'$(TargetFramework)' != ''">
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="..\DocumentService.Application\bin\$(Configuration)\$(TargetFramework)\DocumentService.Application.dll"
|
||||||
|
Pack="true" PackagePath="lib\$(TargetFramework)\" Visible="false" />
|
||||||
|
<None Include="..\DocumentService.Domain\bin\$(Configuration)\$(TargetFramework)\DocumentService.Domain.dll"
|
||||||
|
Pack="true" PackagePath="lib\$(TargetFramework)\" Visible="false" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
<!-- Trigger inner build per-TFM to pick up IncludeReferencedProjectDlls target -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetsForTfmSpecificBuildOutput>$(TargetsForTfmSpecificBuildOutput);CopyProjectReferencesToPackage</TargetsForTfmSpecificBuildOutput>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<Target Name="CopyProjectReferencesToPackage" DependsOnTargets="ResolveReferences">
|
||||||
|
<ItemGroup>
|
||||||
|
<BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->WithMetadataValue('ReferenceSourceTarget','ProjectReference'))"
|
||||||
|
Condition="'%(Filename)' == 'DocumentService.Application' Or '%(Filename)' == 'DocumentService.Domain'" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
Reference in New Issue
Block a user