在没有 .hbm 或 xml 文件的 NHibernate Fluent 映射中定义命名查询
Posted
技术标签:
【中文标题】在没有 .hbm 或 xml 文件的 NHibernate Fluent 映射中定义命名查询【英文标题】:Define Named Query in NHibernate Fluent Mapping without .hbm or xml files 【发布时间】:2011-11-16 20:02:01 【问题描述】:目前我正在使用 NHibernate 和 Fluent 映射作为 ORM。
我使用命名查询来调用存储过程。命名查询保存在.hbm
文件中。
例如:
<hibernate-mapping default-cascade="none"
xmlns="urn:nhibernate-mapping-2.2"
assembly="com.Entities" namespace="com.Entities" >
<sql-query name="QUERY_NAME" cacheable="false">
<return class="FreeText" alias="results" >
<return-property name="Id" column="FreeTextId"/>
<return-property name="FreeTextValue" column="FreeText"/>
</return>
exec PROC_NAME :PARAM1, :PARAM2
</sql-query>
</hibernate-mapping>
我想知道是否有一种方法可以在映射类中定义命名查询,以避免完全使用.hbm
文件!
【问题讨论】:
【参考方案1】:目前还不能,见https://github.com/jagregory/fluent-nhibernate/wiki/Current-NHibernate-Features-Not-Supported-In-Fluent:
(当前)不支持的功能:
<sql-insert>
<loader>
<database-object>
<sql-query>
更改主键名称(目前也有 NHibernate 限制)
【讨论】:
:( 感谢您的链接。我在 Fluent 上永远找不到好的完整资源。您能提出任何建议吗以上是关于在没有 .hbm 或 xml 文件的 NHibernate Fluent 映射中定义命名查询的主要内容,如果未能解决你的问题,请参考以下文章