nhibernate,存储过程

时间:2011-04-19 21:49:24

标签: nhibernate stored-procedures hbmxml

我们可以调用一个STOREDPROC,它将数据插入db,而NHIBERNATE没有返回值吗?如果是这样的话,请用一小部分样本帮助我。(hbm

3 个答案:

答案 0 :(得分:0)

如果您在XML中定义查询,我不知道它是否有效,但您只需创建一个ISQLQuery并在其上调用ExecuteUpdate()

答案 1 :(得分:0)

使用ADO.NET, 从NHibernate会话中获取Connection对象, - 创建一个Dbcommand - 在Dbcommand文本中设置您的过程 - 运行命令

注意:NHibernate可能会支持存储过程,但是它的复杂过程会引用此link,因此请选择ADO.NET,这在您的场景中是最佳的。

答案 2 :(得分:0)

这是一种方式: -

在您的映射文件中: -

<sql-query name="UpdateMeetingsSentFromTeamLeader">
  <![CDATA[exec uspUpdateMeetingsSentFromTeamLeader :MeetingId]]>
</sql-query>

您的代码是: -

public void UpdateMeetingsSentFromTeamLeader(int meetingId)
{
    Session
    .GetNamedQuery("UpdateMeetingsSentFromTeamLeader")
    .SetInt32("MeetingId", meetingId)
    .ExecuteUpdate();
}