2010-04-07 2 views
1

У меня возникли проблемы с тем, как правильно кэшировать отношения «один ко многим» или «многие ко многим» в NHibernate.NHibernate кэширование второго уровня коллекций

Например, офисный класс может иметь следующее отображение:

public OfficeDbMap() 
{ 
    ... 
    HasMany(x => x.Employees) 
     .Cache.NonStrictReadWrite(); 
} 

Однако я считаю, что при удалении сотрудника (без специально удаления его отношения к офису), что кэш-офисно> сотрудники не становятся недействительными, а работник продолжает появляться в списке сотрудников.

Я подозреваю, что это может иметь какое-то отношение к регионам кеша, но я не знаю, должен ли регион быть регионом офиса или областью сотрудника (на самом деле я попытался указать оба и ни один из них не работает).

ответ

1

Проблема может быть в конфигурации NonStrictReadWrite.
Вы должны использовать Read-Write strategy.

Смежные вопросы