Я каким-то образом перенес свой проект в состояние, когда Visual Studio 2013 не удалось скомпилировать его с нелепой ошибкой:
Тип 'System.Collections.Generic.Dictionary'2' определен в сборке, на которую не ссылаются. Вы должны добавить ссылку на сборку "System.Collections, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a".
Во-первых, такой сборки нет, ее не существует. Во- вторых, Dictionary<TKey, TValue>
определяется в mscorlib.dll
, который ссылается по умолчанию, конечно. Resharper (у которого есть собственный механизм анализа кода) сообщает, что решение должно компилироваться в обычном режиме.
Я не знаю, как на Земле это может произойти, потому что мои последние изменения не имеют ничего общего с предположительно ошибочным местом. Линия ссылается на некоторые стандартные функции LINQ (GroupBy
и ToDictionary
), и она работала месяцами без каких-либо изменений. К сожалению, я не могу создать никаких MRE: очевидно, эта ошибка появляется только в контексте моего огромного решения и только с некоторыми конкретными изменениями, сделанными в предположительно нерелевантных местах.
Вот что я пробовал, и это не сработало:
- Очистить + Восстановить
- Изменение целевой платформы от.NET 4.5 до.NET 4.5.1 или.NET 4.0
Кто-нибудь видел такую причуду раньше?