有没有人知道NHibernate是否支持从存储过程返回输出参数?我在文档中进行了搜索,但无法找到任何确认的方法。
答案 0 :(得分:7)
我遇到了同样的问题。 NHibernate不允许您以这种方式使用存储过程。但它确实允许使用普通的旧ADO.NET API进行调用。这是一个例子 -
http://refactoringaspnet.blogspot.com/2009/06/how-to-use-legacy-stored-procedures-in.html
答案 1 :(得分:3)
我不能正式确认,但据我所知,不是直接的。 NHibernate中的存储过程使用非常特定于标准CRUD。
如果要获取输出参数(不是INSERT,UPDATE和DELETE的标准行计数输出参数),您可以回退到可以直接访问的不同(或标准)数据库访问工具到SQL和结果集。 (假设您可以绕过NHibernate的缓存。您还需要确保在运行查询之前刷新NHibernate等。)