我在NHibernate中有这样的映射:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping namespace="News.BusinessEntity" assembly="News.BusinessEntity" xmlns="urn:nhibernate-mapping-2.2">
<class name="News" table="News">
<property name="NewsId" type="Int64" column="NewsId" />
<property name="NewsTitle" type="String" column="NewsTitle" />
</class>
<sql-query name="Sp_News">
<return class="News" />
exec Sp_News
</sql-query>
</hibernate-mapping>
当我打电话给session.GetNamedQuery("Sp_News")
时出现以下错误:
Named query not known: Sp_News.
任何帮助将不胜感激。
仅通过将.hbm.xml文件的Build Action属性设置为Embeded Resource即可解决此错误
如果映射文件不以.hbm.xml结尾,则会引发相同的错误。我不小心重命名了映射文件,并删除了.hbm。从名字上,放回去为我解决了这个问题。