Я получаю следующую ошибку:
ошибка CS1704: блок с тем же простым именем 'Interop.xxx.dll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null был уже импортирован. Попытайтесь удалить одну из ссылок или подпишите их для включения бок о бок.
Все, что я видел, говорит, что я ссылаюсь на два блока с тем же именем, и я должен удалить одного из них. Однако я проверил, и я только ссылаюсь на него однажды.
Это также только происходит, когда я использую msbuild для создания из командной строки на моем dev поле. Если я создаю через Visual Studio или делаю чистое основывается на нашем сервере CI, я не вижу эту ошибку.
Я попытался полностью удалить весь свой источник и создать с нуля, чтобы более тесно напомнить машину сборки, но никакую удачу.
Итак, похоже, я не могу читать сегодня!
В проекте была ссылка на Interop и ссылка на COM, которая генерировала «одно и то же» взаимодействие. Так что их было двое, и я просто не очень хорошо искал. Я до сих пор не понимаю, почему это работало в других местах, но это исправило.
Если это веб-проект, есть ли там какие-либо строгие ссылки на другую версию? Они не будут отображаться как зависимости проекта, но вызовут ошибку времени выполнения, как вы описали. Надеюсь, что это поможет