У меня была такая же проблема, и вот как я ее решил. Мне это показалось странным, но похоже, что это работает, и мне не нужно создавать пакет nuget для моей сторонней сборки таким образом.
Мой .nuspec выглядит так:
<?xml version="1.0"?>
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<title>$title$</title>
<authors>$author$</authors>
<owners>$author$</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>$description$</description>
<releaseNotes>Some release notes</releaseNotes>
<copyright>Copyright 2012</copyright>
<tags>some,tags</tags>
<references>
<reference file="thirdparty.dll"></reference>
<reference file="ThisAssemblyName.dll"></reference>
</references>
</metadata>
<files>
<file src="web.config.transform" target="content"/>
<file src="lib\net40\thirdparty.dll" target="lib\net40"/>
</files>
</package>
Как видите, мне пришлось добавить файловый узел, чтобы скопировать мою третью библиотеку в целевую папку lib \ net40 (в моем случае). Затем мне нужно было добавить «ссылочные» узлы для третьей части, а также сборки, создаваемой этим пакетом NuGet. Я чувствую, что решение Мэтта Уорда должно быть правильным, но оно не работало для меня, пока я не добавил (избыточный) эталонный узел.
Надеюсь, это поможет!
Спасибо
Мустафа