gpt4 book ai didi

c# - (N)Hibernate - 是否可以将多个表动态映射到一个类

转载 作者:太空宇宙 更新时间:2023-11-03 11:56:48 25 4
gpt4 key购买 nike

我有这样的情况,我使用 GIS 软件将有关 GIS 对象的信息存储到每个类型/类别的 GIS 对象(道路、河流、建筑物、海洋...)的单独数据库表中,并将元数据表保存在它存储有关类名及其数据库表的信息。

那些不同类的 GIS 对象共享一些参数,即描述和 ID。我想用一个通用的 C# 类(我们称之为 GisObject)来表示所有这些不同的 GIS 类,这足以满足我需要从应用程序的非 GIS 部分执行的操作,该应用程序列出了给定 GIS 的 GIS 对象类。

我的问题是如何使用 NHibernate 映射这些对象以在创建 C# GisObject 时向 NHibernate 解释以接收和使用表名作为参数,这将从元表中读取(它可以分为两步,我可以在第一步手动获取表名,然后在拉取 GisObject 数据时将其传递给 NHibernate)。

有没有人处理过这种情况,完全可以做到吗?

最佳答案

听起来这里要做的最简单的事情可能是创建一个包含所有通用 GIS 成员的抽象基类,然后继承其他 X 类,这些类除了必要的 NHibernate 映射外什么都没有。然后,我将使用工厂模式使用您的元数据创建特定类型的对象。

关于c# - (N)Hibernate - 是否可以将多个表动态映射到一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com