您可以为具有公共列的表重复使用 nhibernate 映射文件吗

发布于 2024-09-26 16:15:39 字数 168 浏览 6 评论 0原文

我们有一堆共享相同列(ID、代码、描述等)的查找表,我的同事只是问我是否可以构建一个通用的lookup.hbm.xml 映射文件并将其用作基础所有其他查找表。 nhibernate 是否支持包含文件或其他方式来引用常见的 XML 块?我知道 Fluent 支持映射类的继承,但不幸的是,切换映射技术对我们来说不是一个选择。

We have a bunch of lookup tables that all share the same columns (ID,Code,Description, etc) and my co-worked just asked me if we could build a generic lookup.hbm.xml mapping file and use it as a base for all the other lookup tables. Does nhibernate support include files, or some other way to reference a common chunk of XML? I understand that Fluent supports inheritance in the mapping classes, but unfortunately switching mapping technologies is not an option for us.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

時窥 2024-10-03 16:15:39

是的,您可以使用XML 外部实体。将公共字段放入 XML 文件中,并使用 !ENTITY 在其他 XML 文件中引用它们。例如:

<!DOCTYPE mappings [
  <!ENTITY Address SYSTEM "xxx.Address.xml">
]>

在 NHibernate 映射的 XML 中,您可以使用以下命令导入该文件:

&Address;

需要使用文件的完整命名空间(路径)。我在 Visual Studio(至少 2008)中注意到,如果任何文件中存在错误,并且您打开了一个使用外部引用的 XML 文件,它也会报告错误。

Yes, you can using XML external entities. Put the common fields in an XML file and reference them in other XML files using !ENTITY. For example:

<!DOCTYPE mappings [
  <!ENTITY Address SYSTEM "xxx.Address.xml">
]>

In the XML for the NHibernate map you import this using

&Address;

The full namespace (path) to the file needs to be used. I have noticed in Visual Studio (2008 at least) that if there is an error in any file and you have an XML file open that uses an external reference, it will report an error on that also.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文