1

NuGet パッケージを使用するプロジェクトのビルド出力ディレクトリに app.config を含めるように NuGet パッケージを取得するにはどうすればよいですか? 現在、NuGetConfigInclude.exe のみをコピーしていますが、NuGetConfigInclude.exe.config ファイルも必要です。消費するアプリケーションは、.csproj ファイルで PackageReference を使用することに注意してください。packages.config は使用しません。

NuGetConfigInclude.nuspec:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>NuGetConfigInclude</id>
    <version>1.0.0.0</version>
    <title>NuGetConfigInclude</title>
    <authors>NuGetConfigInclude</authors>
    <owners>NuGetConfigInclude</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>NuGetConfigInclude</description>
    <releaseNotes>Test Summary</releaseNotes>
    <copyright>Copyright 2020</copyright>
    <tags>TEST</tags>
  </metadata>
</package>

アプリケーション プロジェクト ファイルの使用:

  <ItemGroup>
    <PackageReference Include="NuGetConfigInclude">
      <Version>1.0.0</Version>
    </PackageReference>
  </ItemGroup>

アップデート:

パッケージにファイルを含めるように nuspec を取得することができましたが、使用するプロジェクトでは、構成ファイルをコンパイルしようとしています。

<?xml version="1.0"?>
<package >
  <metadata>
    <id>NuGetConfigInclude</id>
    <version>24.0.0.0</version>
    <title>NuGetConfigInclude</title>
    <authors>NuGetConfigInclude</authors>
    <owners>NuGetConfigInclude</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>NuGetConfigInclude</description>
    <releaseNotes>Test Summary</releaseNotes>
    <copyright>Copyright 2020</copyright>
    <contentFiles>
      <files include="contentFiles\any\any\assets\**" buildAction="None" copyToOutput="true" flatten="false" />
    </contentFiles>
    <tags>TEST</tags>
  </metadata>
  <files>
    <file src="bin\Debug\NuGetConfigInclude.exe.config" target="contentFiles\any\any\assets"/>
  </files>
</package>

使用するプロジェクトをビルドするときのエラーの例:

重大度コード 説明 Project File Line Suppression State Error CS1022 型または名前空間の定義、またはファイルの終わりが予想される NuGetConsumer C:\Users\GuestAcct.nuget\packages\nugetconfiginclude\24.0.0\contentFiles\any\any\assets\NuGetConfigInclude. exe.config 1 アクティブ

4

1 に答える 1