Как избежать исключений персистентности и картографии в NHibernate? - PullRequest
0 голосов
/ 02 октября 2011

Итак, я получил следующий код:

try
{
    var config = new Configuration();
    config.Configure();
    config.AddAssembly(typeof(Address).Assembly);
    var factory = config.BuildSessionFactory();

    using (var session = factory.OpenSession())
    using (var xaction = session.BeginTransaction())
    {
        var address = createNewAddress();
        session.Save(address);
        xaction.Commit();
        var lastAddressID = address.AddressID;
    }
}

Проблема в том, что я использую NHibernate, чтобы выполнить какое-либо сопоставление, и когда он попадает в строку config.Configure (), если у меня установлен параметр EmbeddeAsResource, он генерирует исключение «Can't compile mapper». Странно, правда?

Итак, я переключился на «Контент», и это сработало.

Но затем он добрался до сессии. Сохраните (адрес) и сгенерировали исключение «Нет доступа».

Я работаю над этим пару часов, и у меня кружится голова. Буду признателен за любую помощь!

Спасибо!

1 Ответ

0 голосов
/ 05 октября 2011

Когда вы устанавливаете его в «Содержимое» - оно игнорируется NHibernate, поэтому оно не загружается - что не создает проблем при настройке фабричного сеанса - а также дает исключение «сохраняющееся отсутствие», когда вы начинаете использовать (un) сопоставленная сущность.

Итак, нам нужно увидеть ваше сопоставление - и класс, который сопоставлен, чтобы помочь вам в дальнейшем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...