У нас есть пользовательский поставщик строки подключения, который подключается к различным базам данных на основе текущего контекста.
Для этого используется один и тот же SessionFactory для всех баз данных.
Если предположить, что у нас могут быть объекты с одинаковыми идентификаторами (т.е. первичным ключом) в разных базах данных, учитывается ли это при извлечении элемента из кэшей первого или второго уровня?
Таким образом, если Entity-1 для Db-1 находится в кэше второго уровня, и я запрашиваю Entity-1 для Db-2, NHibernate загрузит объект из кэша (неверно) или базы данных Db-2 (правильно).