私の共通プロジェクト(NuGetパッケージ)にAsyncUsageAnalyzersをインストールしました。依存するすべてのパッケージ/アプリケーションにルールを適用したいその上に。 UseConfigureAwait
ルールの重大度を変更し、.rulesetが作成されました。csprojのビルドフォルダにファイルを追加する方法.nuspecなしのNuGetパッケージ
私はhttps://stackoverflow.com/a/20271758/2663813に、特定の構造のNuGetパッケージが必要であることを読みました。主張は、ここで確認されているhttps://stackoverflow.com/a/46115423/2663813
私が今持っているもの:
ビルド/ Common.ruleset
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="My common analyzer rules" Description="The rules that are enforced on all of my projects" ToolsVersion="10.0">
<Rules AnalyzerId="AsyncUsageAnalyzers" RuleNamespace="AsyncUsageAnalyzers">
<Rule Id="UseConfigureAwait" Action="Error" />
</Rules>
</RuleSet>
ビルド/ My.Package.Id.targets
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)Common.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
</Project>
で私の.csproj
<Import Project="build\My.Package.Id.targets" />
私の質問は:私はそれをやったことがあり、ルールは私のプロジェクトに正しく適用されています。build/
フォルダの中のNuGetパッケージの中にファイルbuild/
のファイルを追加するにはどうすればいいですか?私はリンクで言及されている.nuspecファイルを使ってそれを行うことができることを知っていますが、私は新しい.csproj構文でそれをしたいと思います。コメントの中で、MarkPflugが翻訳を与え、参考のために https://docs.microsoft.com/en-us/nuget/schema/msbuild-targets#pack-scenariosを引用し、ページhttps://docs.microsoft.com/en-us/dotnet/core/tools/csproj#nuget-metadata-propertiesで
:あまりにも速く投稿するための
:私の場合は
は、私は次のように( 'を実行することができます。動くもの。 –
Content
でも動作しますが、マーティン・ウルリッヒが指摘したように、None
はここより良い選択である)PackagePath
を使用する必要があります(おそらく 'None'ビルドアクションとして)、コンテンツインクルードの代わりに'