如何使用 NHibernate 枚举列名?
我有一个带有一堆 [ColumnName("foo")] NHibernate 属性的类。 有没有一种简单的方法可以要求 NHibernate 列出给定类的所有 ColumnName?
听起来应该很简单,但我只是没有在 NHibernate 文档中看到任何类型的检查(或者也许我今天只是盲目的)。
I've got a class with a bunch of [ColumnName("foo")] NHibernate attributes.
Is there an easy way to ask NHibernate to list all of the ColumnNames for a given class?
It sounds like it should be really easy but I'm just not seeing any kind of inspection in the NHibernate docs (or maybe I'm just blind today).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我遇到了同样的问题,但发现 IClassMetadata 没有任何列信息,只有属性类型、名称、标识符和表信息。
对我有用的:
I had this same problem, but found IClassMetadata doesn't have any column information, just property types, names, identifier, and table information.
What worked for me:
如何获取 NHibernate 映射的实体的数据库列名称:
用法:
享受这种令人敬畏的荣耀:)
How to get the database column names for an entity mapped by NHibernate:
Usage:
Bask in the glory of this awesomeness :)
使用 LINQ 和反射:
Use LINQ and reflection:
使用 NHibernate 的元数据
您可以获得 NHibernate 实际知道的内容,而与它的定义方式无关; 使用属性、xml 映射或 FluentNHibernate。 这使得它比自己使用反射更稳定、更可靠。
Use NHibernate's Metadata
You get what NHibernate actually knows, independent of how it is defined; using attributes, xml mappings or FluentNHibernate. This makes it more stable and more reliable than using reflection on your own.