Итак, в вашем случае:
авно переехал вVisual Studio 2017
Community Edition. Имеет 2 приятных новых функции
Я хочу упаковать мой открытый исходный кодCodeFirstWebFramework
DLL как пакет nuget. А также включаяDLL
пакет должен включать целое дерево каталогов других файлов (включая файлы .js, .tmpl, .css и .md).
Как мне сказатьVisual Studio
что я хочу чтобы это дерево каталогов было включено в пакет?
Из той информации, которую я нашел с помощью расширенного поиска и игнорирования всей устаревшей информации, которая включает добавление файлов в csproj, все, что я мог найти, это поместить их вcontentFiles
папка, но это не похоже на работу.
Мой файл проекта выглядит так:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net45</TargetFramework>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Authors>Nikki Locke</Authors>
<Company>Trumphurst Ltd</Company>
<Description>Easy to use web server for building web apps that use sql databases generated from c# classes</Description>
<Copyright>2017 Trumphurst Ltd.</Copyright>
<PackageProjectUrl>https://github.com/nikkilocke/CodeFirstWebFramework</PackageProjectUrl>
<RepositoryUrl>https://github.com/nikkilocke/CodeFirstWebFramework</RepositoryUrl>
<RepositoryType>Github</RepositoryType>
<PackageTags>C# SQL Code First Web Server</PackageTags>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Markdig" Version="0.12.1" />
<PackageReference Include="Mono.Data.Sqlite.Portable" Version="1.0.3.5" />
<PackageReference Include="mustache-sharp" Version="0.2.10" />
<PackageReference Include="MySql.Data" Version="6.9.9" />
<PackageReference Include="Newtonsoft.Json" Version="10.0.2" />
</ItemGroup>
<ItemGroup>
<Reference Include="System.Net" />
<Reference Include="System.Web" />
</ItemGroup>
</Project>
Дико догадываясь, что мне может понадобиться из-за противоречивой и устаревшей информации в Интернете, я добавил следующее:
<ItemGroup>
<Content Include="contentFiles/**/*.*" copyToOutput="true">
<IncludeInPackage>true</IncludeInPackage>
</Content>
</ItemGroup>
Теперь.nupkg
файл содержит содержимоеcontentFiles
папка инсайдерская (в двух местахcontent
папка иcontentFiles
папка.
Однако при установке пакета в другом проекте файлы содержимого не отображаются, хотя они перечислены вproject.assets.json
файл вobj
папка.