NHibernate ПОСТЕПЕННО / Основы

Не то, чтобы я знаю о, если Вы не выбираете от INFORMATION_SCHEMA, как другие упомянули.

Однако эти SHOW команда довольно гибка, Например:

SHOW tables like '%s%'
5
задан 6footunder 19 November 2009 в 00:09
поделиться

2 ответа

Связанные объекты должны отображаться как объекты - например, Категория , а не int CategoryId .

Когда вы создаете новый Сообщение , если у вас нет фактического экземпляра Category (а почему бы и нет? Если вы выбираете категории из списка, который вы уже загрузили), но у вас есть только его идентификатор, который вы можете использовать метод Load () для получения постоянного экземпляра Category для данного идентификатора без фактического обращения к базе данных:

post.Category = (Category) sesssion.Load(typeof(Category), categoryId);

Вы также можете использовать универсальную версию:

post.Category = session.Load<Category>(categoryId);
4
ответ дан 14 December 2019 в 19:17
поделиться

В NHibernate вы должны использовать ссылочное свойство.

При использовании плавного сопоставления это выглядит примерно так:

mapping.References(x => x.Category, "CategoryId").PropertyRef(x=>x.Id).Cascade.All();

в XML это примерно

<many-to-one name="Category" column="category_id" class="YourNamespace.Category" cascade="all" property-ref="Id" />

Вы можете использовать not-found для выбора поведения когда нет связанной категории.

По сути,вам нужна семантика объекта категории, а не идентификатор, поэтому вы просто указываете NHibernate, как они связаны.

1
ответ дан 14 December 2019 в 19:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: