Как изменить файл .nuspec перед пакетом NuGet в Visual Studio - PullRequest
0 голосов
/ 30 марта 2019

Visual Studio упрощает создание пакетов NuGet в наши дни за счет автоматизации процесса создания файла .nuspec. Это означает, что зависимости версий и т. Д. Создаются автоматически, и вы можете просто установить здесь текстовые значения:

enter image description here

Итак, большая часть работы уже выполнена к моменту сборки пакета NuGet. Однако есть внешние сборки, которые мне нужно добавить в файл .nuspec перед его сборкой. Я знаю, что могу добавить внешние файлы в коллекцию файлов выходного файла .nuspec (в obj \ Release):

enter image description here

У меня вопрос: какое событие сборки или иное мне следует использовать для редактирования .nuspec после его создания, но до вызова команды pack в msbuild или Visual Studio? Или я должен просто запустить отдельный процесс сборки?

Примечание: бонусом будет поиск инструмента, который я могу вызвать и который добавит коллекцию файлов. Без этого, я думаю, мне нужно будет написать код powershell для добавления файлов ...

1 Ответ

1 голос
/ 02 апреля 2019

Вы можете использовать элемент Pack в файле csproj: https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#including-content-in-a-package

Добавить что-то подобное в ваш проект:

<ItemGroup>
  <Content Pack="True"
           PackagePath="lib\netcoreapp2.2"
           Include="C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All\2.1.2\Microsoft.AI.DependencyCollector.dll" />
</ItemGroup>

Это добавит Microsoft.AI.Библиотека DependencyCollector.dll в вашем пакете:

package content

Таким образом, вы можете добавить в свою библиотеку все, что захотите.

...