Visual Studio 2012 - Саморегуляция дженериков
У меня здесь немного проблем, в нашей компании у нас есть собственный уровень DA, который использует саморегуляторные дженерики. В Visual Studio 2010 среда была в восторге от этого, однако 2012 год, похоже, с трудом, хотя при его создании он преуспевает.
Вот пример:
![Example of parsing error]()
Определение DataObject выглядит следующим образом:
[TypeDescriptionProvider(typeof(HyperTypeDescriptor.HyperTypeDescriptionProvider))]
public class DataObject<T> :
INotifyPropertyChanged,
IDataErrorInfo,
IEditableObject,
IDataObject
where T :
DataObject<T>,
new()
Я понимаю, что это не простейший из определений, но его законный, и он прекрасно работает.
Однако эта "проблема" вызывает сбой intellisense, а также функцию "Go To Definition", которая, разумеется, разочаровывает.
Я попытался удалить и повторно добавить ссылки, но проблема не устранена.
VS2010 совершенно счастлив и является тем, что я вернулся к использованию, VS2012 очень приятный и отзывчивый, но если эта проблема не устраняет его прерыватель транзакции.
У кого-нибудь есть идеи?
Хотите сделать пару вещей понятными, эта проблема является прерывистой (что является болью, поскольку ее очень сложно отслеживать основную причину).
Он разбивает intellisense и "переходите к определению" везде, а не только для класса с ошибкой.
Я собираюсь создать примерное решение для отправки для подключения, но время не на моей стороне в последнее время.
Ответы
Ответ 1
Это может произойти, если вы откроете одно и то же решение/проект с двумя экземплярами Visual Studio (например, два Visual Studio 2010). Механизм Intellisense использует .NCB файлы, которые экземпляры Visual Studio не могут делиться. В этом случае поведение Intellisense странно.
Ответ 2
Звучит глупо, но у меня возникают аналогичные проблемы с новым кодом, который вводится или изменяется с помощью intellisense. Я отследил его, чтобы в основном потребовать сохранить все, а иногда даже очистить и перестроить/скомпилировать, прежде чем intellisense правильно подтвердит, что действующий код.
Аналогично, что иногда случается и в VS2010, которое можно продублировать, если вы создаете структуру класса, а затем редактируете код на другом классе, чтобы использовать его, затем возвращайтесь назад, взламывайте функции класса и добавляете новые без сохранения.
Ответ 3
Иногда, и это не всегда так, что ReSharper может вызывать проблемы со ссылками и функциональностью GTD. Вы установили его?