Единство, странная отладка
Я добавил необходимый оператор using. используя System.Collections.Generic в начало моего класса, и компилятор с радостью принимает мое использование списков, но когда я отлаживаю, у меня возникает очень странная проблема отладки, когда я расширяю свои списки, вместо этого получаю:
неизвестный тип 'System.Collections.Generic.CollectionDebuggerView'1 mscorlib.
Какие возможные причины могут быть? Google, похоже, не помог мне...
Списки, похоже, объявляют свою информацию, когда объявлены и пусты, и они определены с классом, который я создал, но я никогда не видел эту проблему в любом другом наборе инструментов, таком как XNA и т.д.
I shoudl также упоминает, что это через MonoDevelop. Я вижу эту ошибку.
Спасибо.
Ответы
Ответ 1
Это была ошибка в Mono в соответствии с этими примечаниями к выпуску. Он исправлен в 2.10.2
, но Unity не использует исправленную Mono-сборку.
679586: Неизвестный тип System.Collections.Generic.CollectionDebuggerView Ошибка при просмотре Параметризированная коллекция в отладчике
Unity использует Mono 2.6. Без доступа к источнику для Unity я не уверен, как вы можете реализовать этот патч. Даже с источником 2.6
по-прежнему является стабильной строкой, поэтому 2.10.2
, поэтому может возникнуть проблема в другом месте.
Ответ 2
Используется метод .ToArray()
для преобразования моего массива List<T>
в T[]
. Просто не забудьте пропустить этот код в выпуске!
Ответ 3
Быстрое и грязное обходное решение, которое работает для меня:
private class CellList : List<Cell> {}
Как-то он правильно отображается в отладчике.