最近、私はVisual Studio 2017
Community Editionに移動しました。これは、2つの素敵な新機能Visual StudioでNugetパッケージにファイルを追加する方法2017
- を持っていますが、明示的csprojにソースファイルを含める必要はありません、それ は、それが直接nugetパッケージを構築することができます
- 、これを自動的に行います。
オープンソースCodeFirstWebFramework
DLLをナゲットパッケージとしてパッケージ化したいと考えています。 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
ファイルが2ヶ所、content
フォルダ、およびcontentFiles
フォルダ内(contentFiles
フォルダインサイダーそれの内容を持っている。
ただし、別のプロジェクトにパッケージをインストールすると、コンテンツファイルはobj
フォルダのproject.assets.json
ファイルに記載されていますが、表示されません。
*ソースファイルを明示的にcsprojに含める必要はありません。これは自動的に実行され、直接nugetパッケージをビルドすることができます* - どこで読んだのですか?このdoco(完全なものをターゲットにしているかどうかわからない.netのコアの例です)には、いくつかの手順があります。https://docs.microsoft.com/en-us/nuget/guides/create-net-standard-packages-vs2017プロジェクトとビルド出力ディレクトリにDLLを追加したか、csprojで参照されていますか?例えば、 –
。 http://www.natemcmaster.com/blog/2017/03/09/vs2015-to-vs2017-upgrade/ –
"プロジェクトにDLLを追加してOutput Dirをビルドしたか、それともcsprojで参照されていますか?" - その質問を理解していない。何dll? –