powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / NHibernate не загружать внутренние колекции
4 сообщений из 4, страница 1 из 1
NHibernate не загружать внутренние колекции
    #38030730
DofD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Используется автомапинг с помощью FluentNHibernate.

например существуют такая модель
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public class Class1
    {
        public virtual int Property1  { get; set; }
    }

public class Class2
    {
        public virtual string Property1  { get; set; }

        public virtual IList<Class1> ClassCollect{ get; set; }
    }



Вопрос в следующим как нибудь можно сделать чтобы не грузилась внутренняя коллекция ClassCollect в Class2.
Или чтобы при загрузке для каждого элемента коллекции вызывалась определенная функция дополнительной инициализации
...
Рейтинг: 0 / 0
NHibernate не загружать внутренние колекции
    #38030753
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DofDИли чтобы при загрузке для каждого элемента коллекции вызывалась определенная функция дополнительной инициализации
Зачем такие сложности? Но если очень хочется - то смотрите в сторону событий NHibernate, в частности IPostLoadEventListener.
...
Рейтинг: 0 / 0
NHibernate не загружать внутренние колекции
    #38031190
DofD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое буду смотреть.
Сложности из-за того что в классе который содержится в коллекции, есть события которые необходимо инициализировать при загрузке.
...
Рейтинг: 0 / 0
NHibernate не загружать внутренние колекции
    #38031380
DofD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оказалось то что надо для дополнительной инициализации. Вот пример если кому нужно:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
public class PostLoadEntityEvent : IPostLoadEventListener
{
        public void OnPostLoad(PostLoadEvent postLoadEvent)
        {
            // Проверяем реализует ли сущьность интерфейс 
            var entity = postLoadEvent.Entity as IИнтерфейс;

            if (entity != null)
            {
                // Инициализируем 
                ....
            }
        }
}
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / NHibernate не загружать внутренние колекции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]