Musisz użyć najnowszej wersji NHibernate (2.1.2).
<sql-query name="ReturnSomethig" callable="true">
<return class="Somethig" />
{ call ReturnSomethig(:someParameter) }
</sql-query>
Procedura składowana Oracle musi mieć pierwszy parametr jako parametr out sys_refcursor.
I możesz wywołać nazwane zapytanie w ten sposób:
IQuery query = currentSession.GetNamedQuery("ReturnSomethig");
query.SetInt64("someParameter", someParameter);
var somethig = query.List<Somethig>();
I to zadziała.