Пакет NuGet не копирует файлы и преобразует файлы, как ожидалось - PullRequest
0 голосов
/ 12 апреля 2019

Я пытаюсь понять, как работают пакеты NuGet, чтобы я мог упаковать некоторые из моих неоднократно используемых источников для будущих проектов. Я работаю с простой библиотекой классов (.Net Foundation) и использую CLI для создания файла nuspec, а затем упаковываю из CLI. Я получаю пакет nuget, который отлично устанавливает DLL библиотеки классов.

Но теперь я хочу добавить преобразование в App.Config, которое включает строку подключения, и я хочу скопировать простой файл типа readme в целевой проект. При использовании следующего файла nuspec файл readme не устанавливается в папку readme должным образом (не устанавливается вообще), и я не могу заставить работать ни один из app.config.transforms.

<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
  <metadata>
<id>$id$</id>
<version>$version$</version>
<title>$title$</title>
<authors>$author$</authors>
<owners>$author$</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>$description$</description>
<releaseNotes>Stuff</releaseNotes>
<copyright>Copyright 2019</copyright>
<tags>123 1234</tags>
 </metadata>
  <files>
 <file src="app.config.transform" target="content\app.config.transform" />
<file src="Model\State1.cs" target="content\State1.cs"/>
<file src="new.txt" target="content\new.txt"/>
  </files>
</package>

Куда мне положить файлы преобразования? Кажется, что они должны быть в папке содержимого в моем исходном проекте, но это не работает. Когда я упаковываю пакет nuget, я получаю сообщение о том, что файлы не находятся в папке содержимого, даже если они явно.

С вышеуказанным файлом nuspec я получаю ошибку:

Доступ к пути 'C: \ Users \ Имя пользователя \ .nuget \ packages \ MyDLLProject.lookups \ 1.1.7041.17482 \ content' запрещен.

Почему это?

...