使用 NHibernate 映射具有由模糊字段支持的关系的实体

发布于 2024-12-10 14:50:44 字数 489 浏览 0 评论 0原文

这里还有一个关于 NHibernate 的问题。 这个问题很可能没有理想的答案,但仍然让我们尝试一下。

我目前正在全力以赴地使用 NHibernate 将域模型映射到数据库上。该领域模型来自一个严重混淆的框架。 (并不是说我之前已经处理过很多混淆的代码,但是在大多数地方,这个代码既不能被 Reflector 翻译,也不能被 Resharper 翻译。)

一切都或多或少地顺利,直到我面对一个需要多对多的实体。 - 由属性表示的一个关系,没有带有模糊支持字段的设置器。

  1. 是否可以以某种方式引用这个混淆的字段?一个非常特殊的IPropertyAccessor
  2. 如果没有,我如何加载一个完全构建的实体?注入相关对象的唯一选择是使用接受它的构造函数。但是在实例化正在加载的实体时,除了密钥之外,IInstantiatorIInterceptor 都没有任何数据。还有其他适合我需要的扩展点吗?

And here goes yet another question on NHibernate.
This one most likely doesn't have a desired answer, but still - let's give it a try.

I'm currently putting all the efforts into mapping a domain model onto the database using NHibernate. This domain model comes from a framework which is heavily obfuscated. (Not that I have worked a lot with obfuscated code before, but this one in most of the places can be translated neither by Reflector, nor by Resharper.)

Everything went more or less fine until I faced an entity with a required many-to-one relationship represented by a property with no setter with obfuscated backed field.

  1. Is it possible to reference this obfuscated field somehow? A very special IPropertyAccessor?
  2. If not, how can I load a fully constructed entity? The only option to inject a related object is by using a constructor that accepts it. But at the time of instantiating of an entity being loaded, neither IInstantiator nor IInterceptor has any data of it apart from the key. Any other extension points that suit my need?

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

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

发布评论

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

评论(1

十雾 2024-12-17 14:50:44

要允许 NHibernate 访问您的字段而不是属性,您可以在映射中使用它:

access="field"

To allow NHibernate to access your field instead of property you can use this in your mappings:

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