nHibernate: использование имени объекта с QueryOver и CreateCriteria - PullRequest
2 голосов
/ 22 сентября 2011

У меня есть два файла отображения hbm.xml.Они идентичны, за исключением свойств таблицы классов и имени объекта.Они должны населять одну и ту же сущность.У них есть entity-name = Alpha и Beta, table = PersonAlpha и PersonBeta соответственно.

Я попытался использовать QueryOver и Criteria для заполнения сущности Person:

var person = session.QueryOver<Person>("Alpha").Where(p => p.Firstname == "Donald").SingleOrDefault<Person>();
var person2 = session.CreateCriteria("Beta").Add(Restrictions.Eq("Firstname", "Donald")).UniqueResult<Person>();

.имя объекта, которое, как я думал, nHibernate будет знать, какой файл сопоставления использовать, но, согласно Profiler, каждое из приведенных выше утверждений генерирует SQL как для таблиц PersonAlpha, так и для PersonBeta.Почему это так?

Я использую версию 3.2.0 2001 og nHibernate.

Спасибо!

...