NHibernate - 如何调用存储过程?
问题描述:
我想从我的nHibernate应用程序中调用存储过程。该存储过程返回一个列表,我将返回到用户界面。如何调用存储过程 - 任何人都可以帮助我解决这个问题吗?NHibernate - 如何调用存储过程?
答
您可以使用下面的示例。 在你的映射文件定义查询
<sql-query name="MyNameQuery">
<return-scalar column="SomeColumn" type="String"/>
<![CDATA[exec proc_MyProc ?]]>
</sql-query>
对于呼叫,你可以做以下
ISQLQuery objQuery = MySession.GetNamedQuery("MyNameQuery") as ISQLQuery;
objQuery.SetParameter(0, "1"); // stored procedure expects a parameter, not used here
var myResult = objQuery.List<string>();
我想从应用程序调用我的SP insted的创造是如何做到的映射和域对象我这样做 – bharat 2010-05-26 18:29:26
这就是我的意思 nhibernate调用存储过程来返回没有映射实体的数据集 – bharat 2010-05-26 18:52:32
您可以使用Session.Connection属性来获取IDbConnection并从那里调用存储过程。 – Fahad 2010-05-26 21:44:58