Как разрешить неправильную «неоднозначную ссылку» от ReSharper на наследование класса? - PullRequest
26 голосов
/ 10 октября 2008

В моем проекте у меня есть класс, который наследуется многими другими классами. Мы назовем это ClassBase.

public class ClassInheritFromBase : ClassBase

Когда ClassBase наследуется, ReSharper выдает предупреждение «Неоднозначная ссылка» в ClassBase, и все внутри нового класса, унаследованного от ClassBase, не имеет IntelliSense и получает предупреждения о том, что он не может его найти.

Проект компилируется и работает нормально.

Если я изменю пространство имен, в котором находится ClassBase, а затем изменю наследующие классы, они сочтут это нормальным, и у ReSharper нет проблем, IntelliSense работает ... до тех пор, пока он не будет скомпилирован. После компиляции он возвращается к неоднозначным ссылочным предупреждениям и ко всему прочему.

Было ли это замечено ранее и как это можно исправить? Я видел запись в отслеживании ошибок JetBrains для такой проблемы, но они закрыли ее как неспособную воспроизвести.

Ответы [ 12 ]

0 голосов
/ 28 октября 2009

У меня возникла та же проблема со ссылками на классы C # в папке AppCode.

Я решил эту проблему, обновив свой ReSharper до версии 4.5 (с версии 4.1).

Это было очень простое обновление, мне просто нужно было получить последнюю версию с сайта JetBrains (http://www.jetbrains.com/resharper/download/) и запустить ее.

Мне не пришлось удалять предыдущую версию (v4.1). Мне не нужно было повторно вводить существующий лицензионный ключ.

Все ссылки теперь распознаются правильно, и я могу перемещаться по классам, как и ожидалось.

0 голосов
/ 03 марта 2009

Я столкнулся с той же проблемой. Проблема, с которой я столкнулся, была вызвана пользовательским поставщиком сборки (из библиотеки с открытым исходным кодом, которую я использую PageMethods ) и тем, что все мои страницы .aspx наследуются от класса BasePage, который находится в папке App_Code .

Мне не удалось заставить какую-либо сборку ReSharper работать с моим проектом (4.1.933, 4.1.943 (последняя версия) или 4.5). Исправление в последней сборке ReSharper устраняет проблему «Неоднозначная ссылка», но нарушает пользовательский поставщик сборки.

Единственный способ заставить поставщика сборки и базовые классы работать с ReSharper - это поместить базовые классы в отдельную библиотеку классов.

Ниже перечислены зарегистрированные ошибки Jira, которые, по-видимому, связаны с этой проблемой:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...