Добавить комментарий

NHibernate, как и большинство ORM-библиотек, использует шаблон UnitOfWork, чтобы управлять жизненным циклом таких объектов как сессия и транзакция. Обычно, чтобы не привязывать логику отображения к логике ORM, в приложениях пишется собственный класс UnitOfWork, являющийся оберткой над сущностями ORM (NHibernate). Этот класс выглядит примерно так:

public class UnitOfWork: IUnitOfWork, IDisposable {
    public UnitOfWork(){
        // Создаем общую сессию NHibernate
    }

    public void Dispose(){
        // Комитим изменения сессии или просто закрываем ее
    }
}

Его использование в логике отображения:

using(CreateUnitOfWork()){
    var item = new Item();
    ItemRepository.Add(item);
}
Внимание! Вы собираетесь отправить информацию от имени анонимного пользователя.
v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.