我正在使用代码合同为我的项目生成附属程序集。基本上它为项目的 MyAssembly.dll 创建了一个 MyAssembly.Contracts.dll。这应该放在您的程序集旁边,但不被任何应用程序引用——它仅由合同工具使用。
我正在尝试将其包含在我的 nuget 包中,但是当我将该包安装到另一个应用程序中时,Contracts 程序集作为参考包含在内,这会产生问题。
根据.nuspec 参考,这应该像添加references
元素一样简单,但似乎被忽略了。我目前的理论是,这是因为我使用 .csproj 替换令牌,并且它从 .csproj 而不是 .nuspec 读取引用。
有没有人这样做过?有任何想法吗?
以下是我的 .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>