Можно указать пространство имен и блок для использования типов от наверху файлов HBM:
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="MyCorp.MyAssembly" namespace="MyCorp.MyAssembly.MyNamespace">
Можно ли использовать типы от нескольких блоков / пространства имен в том же файле отображения, и раз так каков синтаксис для того, чтобы сделать так?
Как сказал Бен, вы можете использовать полные имена типов.
Однако обычно в NHibernate отображение для каждого класса помещается в отдельный файл, что упрощает обслуживание.
Лично я иногда группирую связанные классы в одном файле, но это все (например, XYHeader и XYDetail ).
Для типов, поступающих из разных сборок (которые обычно подразумевают разные поддомены), я даже использую отдельные проекты.
Вы можете удалить определения сборки и пространства имен по умолчанию из верхней части файла HBM, а затем указывать полные имена типов каждый раз, когда они встречаются в файле сопоставления, следующим образом:
Namespace.TypeName,Assembly.Name
Неприятно, но работает.