Типы из нескольких сборок и пространств имен в файлах сопоставления nhibernate - PullRequest
5 голосов
/ 19 апреля 2010

Вы можете указать пространство имен и сборку для использования типов в верхней части файлов HBM:

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="MyCorp.MyAssembly" namespace="MyCorp.MyAssembly.MyNamespace">

Можно ли использовать типы из нескольких сборок / пространств имен в одном файле сопоставления, и если да, то каков синтаксис для этого?

Ответы [ 2 ]

4 голосов
/ 19 апреля 2010

Вы можете удалить определения сборки и пространства имен по умолчанию из верхней части файла HBM, а затем указывать полные имена типов при каждом их появлении в файле отображения следующим образом:

Namespace.TypeName,Assembly.Name

Не красиво, но работает.

3 голосов
/ 19 апреля 2010

Как сказал Бен, вы можете использовать квалифицированные имена типов.

Однако обычная практика в NHibernate - помещать сопоставление для каждого класса в отдельный файл, что облегчает его обслуживание.

Лично я иногда группирую связанные классы в одном файле, но это все (например, XYHeader и XYDetail ).

Для типов, поступающих из разных сборок (которые обычно подразумевают разные поддомены), я даже использую отдельные проекты.

...