У меня есть библиотека многоцелевого фреймворка, которая содержит набор файлов xsd. Я хочу упаковать эту библиотеку как nuget и добавить эти xsds в nuget. Для этого я использую .cproj aproach, а не файл .nuspe c.
Фактическое добавление файлов не проблема, единственное, что я хочу иметь возможность установить файл свойство «копировать в выходной каталог» на «Всегда» при установке Nuget.
Я много раз использую файл install.ps1, как описано здесь в stackoverflow, и это фактически устанавливает свойство для файлов, включенных в . NET Рамочный проект. Но когда вы добавляете nuget в проект. NET Core или. NET Standard, он ничего не делает с файлами. Я думаю, это потому, что. NET Framework использует подход package.config, в то время как het. NET Core и. NET Standard с использованием PackageReference.
мой файл .csproj выглядит так:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard2.0;netcoreapp2.1;net45</TargetFrameworks>
<Version>1.0.11</Version>
</PropertyGroup>
<ItemGroup>
<None Update="XSD\V202001\Voorbeeld\Common.xsd" Pack="true">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="XSD\V202001\Voorbeeld\Specific.xsd">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Content Include="XSD/**/*.*" copyToOutput="true">
<IncludeInPackage>true</IncludeInPackage>
<CopyToOutput>true</CopyToOutput>
<BuildAction>none</BuildAction>
<copyToOutput>true</copyToOutput>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="tools\install.ps1">
<PackagePath>tools\</PackagePath>
</Content>
</ItemGroup>
</Project>
Как выглядит nuget из проводника пакетов:
Как выглядит nuget из проводника пакетов
Может кто-нибудь сказать мне, как установить свойство всегда для всех фреймворков?