У меня проблема с многопоточным настольным приложением, использующим Castle ActiveRecord в C #:
Чтобы сохранить графический интерфейс при поиске объектов на основе ввода пользователя, я использую BackgroundWorker
для функции поиска. Некоторые из свойств объектов, особенно некоторые HasMany
-отношения, помечены как Lazy
.
Теперь, когда поиск завершен, и пользователь выбирает результирующий объект, должны отображаться некоторые свойства этого объекта. Но так как поиск был выполнен BackgroundWorker
в другом потоке, доступ к свойствам завершился неудачно, так как сеанс для отложенного доступа больше не доступен.
Каков будет лучший способ выполнить поиск в дополнительной ветке, чтобы поддерживать графический интерфейс и правильно обращаться ко всем свойствам, включая помеченные как ленивые?
Спасибо за любые советы!
С уважением
sc911