我很難試圖讓我的存儲過程適用於NHibernate。從SP返回的數據不對應任何數據庫表。NHibernate存儲過程問題
這是我的映射文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="DomainModel" namespace="DomainModel.Entities">
<sql-query name="DoSomething">
<return class="SomeClass">
<return-property name="ID" column="ID"/>
</return>
exec [dbo].[sp_doSomething]
</sql-query>
</hibernate-mapping>
這裏是我的域類:
namespace DomainModel.Entities
{
public class SomeClass
{
public SomeClass()
{
}
public virtual Guid ID
{
get;
set;
}
}
}
當我運行的代碼,它失敗
Exception Details: NHibernate.HibernateException: Errors in named queries: {DoSomething}
在線路80
Line 78: config.Configure(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "NHibernate.config"));
Line 79:
Line 80: g_sessionFactory = config.BuildSessionFactory();
當我調試到NHibernate代碼時,似乎SomeClass沒有添加到persist字典中,因爲沒有在hbm.xml中定義的類映射(只有sql-query)。後來在CheckNamedQueries函數中,它無法找到SomeClass的persistor。
我已經檢查了所有顯而易見的東西(例如,將hbm作爲嵌入式資源),我的代碼與我在網上找到的其他樣本沒有太大差別,但不知何故,我無法使其工作。任何想法我能如何解決這個問題?