Существует неоднозначная ссылка

в проекте Visual Studio 2010 у нас было два класса с одинаковыми именами в двух разных пространствах имен, которые обычно включаются в ViewModels во всем приложении. Один такой класс с тех пор был устаревшим и удален, но я получаю двусмысленную ссылочную ошибку при прямом обращении к оставшемуся классу, хотя старый класс больше не существует.

у нас в принципе есть что-то вроде этого:

using OurNamespace.UI.Common;
using OurNamespace.SomewhereElse;

// *snip*
SomeClass.SomeMethod();

однажды, оба из вышеперечисленного пространства имен имели SomeClass, но мы удалили один в OurNamespace.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.Общий. Однако, при построении, мы получаем следующую ошибку:

' SomeClass 'является неоднозначной ссылкой между' OurNamespace.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.Общий.SomeClass " и " OurNameSpace.SomewhereElse.SomeClass'

Я уже пробовал очистить решение и перестроить, как предложено в ответах на этот неоднозначный справочный вопрос, только чтобы продолжить видеть ошибку. Что еще скрытие за этим заставляет его думать, что удаленный класс все еще существует для целей двусмысленной ссылки? Даже IntelliSense знает, что теперь есть только один.

3 ответов


Если вы посмотрите на ссылки вашего проекта (с помощью на


все еще есть ссылка на пространство имен, в котором раньше был старый класс (потому что он использует другие вещи)

Я думаю, что ваша проблема связана со ссылкой на dll, которая использовалась для хранения удаленного класса.

просто удалите ссылку и повторно добавьте ее. Это должно решить проблему.


супер старая нить, но в VS2017 у меня это произошло и пришлось перезапустить VS чтобы исправить это после перемещения файлов между пространствами имен.