我们有一堆查找表,它们都共享相同的列(ID、代码、描述等),我的同事只是问我是否可以构建一个通用的 lookup.hbm.xml 映射文件并将其用作基础所有其他查找表。nhibernate 是否支持包含文件,或其他引用公共 XML 块的方式?我知道 Fluent 支持映射类中的继承,但不幸的是,切换映射技术不是我们的选择。
问问题
468 次
1 回答
2
是的,您可以使用XML 外部实体。将公共字段放在 XML 文件中,并在其他 XML 文件中使用!ENTITY
. 例如:
<!DOCTYPE mappings [
<!ENTITY Address SYSTEM "xxx.Address.xml">
]>
在 NHibernate 映射的 XML 中,您使用
&Address;
需要使用文件的完整命名空间(路径)。我在 Visual Studio(至少 2008 年)中注意到,如果任何文件中存在错误并且您打开了使用外部引用的 XML 文件,它也会报告错误。
于 2010-10-07T16:09:21.893 回答