プロジェクトの衛星アセンブリを生成するためにコードコントラクトを使用しています。基本的に、プロジェクトのMyAssembly.dllのMyAssembly.Contracts.dllを作成します。これはアセンブリの横に配置されることになっていますが、どのアプリからも参照されていません。コントラクトツールでのみ使用されます。
これをnugetパッケージに含めようとしていますが、そのパッケージを別のアプリにインストールすると、問題を引き起こす参照としてコントラクトアセンブリが含まれます。
.nuspecリファレンスによると、これは要素を追加するのと同じくらい簡単なはずですが、references
無視されているようです。私の現在の理論では、これは置換トークンに.csprojを使用しており、.nuspecではなく.csprojから参照を読み取っているためです。
誰かがこれを以前にやったことがありますか?何か案は?
これが私の.nuspecの関連部分です:
<?xml version="1.0"?>
<package>
<metadata>
<references>
<reference file="MyAssembly.dll"/>
</references>
</metadata>
<files>
<file src="bin\Release\CodeContracts\*.dll" target="lib\net45"/>
</files>
</package>