Что делает атрибут NHibernate.Search ContainedIn? - PullRequest
0 голосов
/ 28 февраля 2010

А чем он отличается от IndexedEmbedded?

P.s. и что является лучшим источником информации о NHibernate.Search?

1 Ответ

1 голос
/ 03 марта 2010
  1. Ответ

ContainedInAttribute используется вместе с IndexedEmbeddedAttribute. ContainedInAttribute используется как своего рода маркер, который указывает на класс, который использует и IndexedEmbeddedAttribute. Это говорит NHibernate.Search, что когда вы обновляете этот класс, вы хотите обновить полнотекстовый индекс родителя. Это хорошо, когда вы обновляете дочерний класс-владелец и хотите, чтобы индекс владельца также обновлялся.

ниже - пример того, как это использовать.

[Indexed]
class Parent
{
     [IndexedEmbeded]
     public Child SomeChild { get; set; }
}

class Child
{
     [ContainedIn]
     public Parent MyParent { get; set; }
}

Примечание. Атрибут ContainedIn бесполезен, если вы указываете на родителя-владельца, который не использует атрибут IndexEmbeded.

  1. Ответ

Документация Информация из поиска в спящем режиме, но большинство вещей здесь применимо и к NHibernate.Search.

http://docs.jboss.org/hibernate/stable/search/reference/en/html/

или

http://docs.jboss.org/hibernate/stable/search/reference/en/html_single/

...