Как обеспечить, чтобы файлы содержимого в пакете Nuget попали в папку bin - PullRequest
0 голосов
/ 11 июля 2019

Мне нужно распространить 2 .dll-файла вместе с 2 .xml-файлами по различным проектам .Net Core, нацеленным на net47.Оба файла .dll и .xml должны оказаться в папке bin проектов.

Я создал файл .nuspec ниже.Я копирую все файлы в lib \ net47.Я также копирую файлы .xml в contentFiles \ any \ any.

Я использую PackageReference для включения этого пакета Nuget в мои проекты:

<PackageReference Include="Decideware.Spire.Xls" Version="*" />

Проблема в том, что когдаЯ строю проект, файлы .xml оказываются среди моих исходных файлов.Также действие сборки было изменено с «None» в моем .nuspec на «C # Compiler», а copyToOutput было изменено с «true» на «Do Not Copy».Затем Visual Studio пытается создать файлы .xml, как если бы они были файлами C #, что приводит к большому количеству сообщений об ошибках.

Как мне структурировать .nuspec, чтобы файлы .xml копировались в каталог bin?

<?xml version="1.0" encoding="utf-8"?>
<package>
    <metadata>
        <id>Decideware.Spire.Xls</id>
        <version>7.12.3</version>
        <!-- required for .Net Core style PackageReferences -->
        <contentFiles>
            <files include="Spire.XLS.xml" buildAction="None" copyToOutput="true" />
            <files include="license.elic.xml" buildAction="None" copyToOutput="true" />
        </contentFiles>
    </metadata>
    <files>
        <file src="Spire.License.dll" target="lib\net47\Spire.License.dll" />
        <file src="Spire.XLS.dll" target="lib\net47\Spire.XLS.dll" />

        <file src="Spire.XLS.xml" target="lib\net47\Spire.XLS.xml" />
        <file src="license.elic.xml" target="lib\net47\license.elic.xml" />

        <file src="Spire.XLS.xml" target="contentFiles\any\any\Spire.XLS.xml" />
        <file src="license.elic.xml" target="contentFiles\any\any\license.elic.xml" />
    </files>
</package>
...