Для наших видов сетки мы устанавливаем источники данных в виде списка результатов запроса Nhibernate.
Мы используем ленивую загрузку, поэтому объекты на самом деле проксируются ... большую часть времени.
В некоторых случаях список будет состоять из типов Student и Composition_Aop_Proxy_jklasjdkl31231, которые реализуют те же члены, что и класс Student.
У нас все еще открыт сеанс, поэтому отложенная загрузка будет разрешена нормально, если GridView не выдаст ошибку о различных типах в gridview.
Наш текущий обходной путь - клонировать объект, что приводит к извлечению всех данных, которые могут быть лениво загружены, даже если к большинству из них не будет доступа ... никогда. Это, однако, превращает прокси в реальный объект, и сетка рада. Влияние на производительность меня пугает, так как мы приближаемся к тому, чтобы развернуть код как есть. Я пытался удалить объект после сохранения, что должно гарантировать, что все является прокси, но это тоже не очень хорошая идея.
У кого-нибудь есть предложения / обходные пути?