Я создаю пакет NuGet, который содержит .Net Standard DLL и файл конфигурации.Предполагается, что этот проект будет поддерживать как .Net Core, так и .Net Framework.
В двух словах, упаковка этого DLL-файла и файла конфигурации с использованием dotnet pack
и файла .nuspec создаетпакет, который не «полностью совместим» с .Net Core:
Подробнее здесь:
В проекте .csproj Я добавляю .nuspec ссылку на файл:
<NuspecFile>.\MyProject.nuspec</NuspecFile>
, рядом с которой у меня есть следующий .nuspec файл:
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>MyProject</id>
<version>1.0.0</version>
<authors> </authors>
<description>some text</description>
</metadata>
<files>
<file src="MyProject.targets" target="Build\"/>
<file src="NLog.config" target="Build\" />
<file src="bin/Release/MyProject.dll" target="lib\dotnet"/>
</files>
<dependencies>
<dependency id="newtonsoft.json" version="11.0.2" />
<dependency id="nlog" version="4.5.10" />
</dependencies>
</package>
Затем, рядом с этими двумя, у меня есть файл .targets :
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<None Include="NLog.config">
<Link>NLog.config</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
Я упаковываю это в пакет nuget с помощью команды dotnet pack
в VSTS,давая ему путь к моему .csproj файлу.
Я пытаюсь сделать этот сложный подход, потому что я хочу, чтобы файл NLog.config автоматически включался в проекты, устанавливающие этот пакет, а также в настройкиэто свойство файла конфигурации Скопировать в выходной каталог в Скопировать всегда , подход, который принят from здесь и здесь , но который еще не работает.
В качестве примечания, я говорю то же самое поведение раньше, когда я пытался dotnet pack
и давая егопуть к файлу .nuspec , но он исчез, когда я изменил путь к .csproj .
Кто-нибудь знает, почему это предупреждениепоявляется в клиентах .Net Core, использующих этот пакет, когда упаковываете его в файл .nuspec ?
Большое спасибо за ваше терпение и помощь!