Я создаю HashMap, отображающий поле идентификатора строки в DataTable на саму строку, чтобы улучшить время поиска для некоторых часто используемых таблиц.Время от времени я получаю исключение RowNotInTableException:
Эта строка была удалена из таблицы и не содержит никаких данных.BeginEdit () позволит создавать новые данные в этой строке.
После небольшого осмотра сети кажется, что DataRows не любят не присоединяться к DataTable.Даже несмотря на то, что DataTable остается в памяти (не уверен, что DataRows сохраняют ссылку на него, но я определенно все еще кэширую его в любом случае), возможно ли, что я что-то ломаю, сохраняя все эти строки изолированными в HashMap?Какая еще причина может быть для этой ошибки?В этом посте RowNotInTableException при доступе во второй раз обсуждается похожая проблема, но решения также нет.
UPDATE
Я на самом деле храню DataRowViews, если это имеет какое-то значение.