你好,
我正在尝试,为用于IN STATEMENT的命名查询(本地sql)传递长数组:
像这样:
(...)
标识符在哪里(:pIdes)
我试着通过我的想法只要[]:
ctx.GetNamedQuery("NamedQueryName")
.SetParameter<long[]>("pIdes", Identificators)
.List<EmpreendimentoInputReport>();
并作为一个字符串
ctx.GetNamedQuery("NamedQueryName")
.SetParameter<string>("pIdes", Identificators)
.List<EmpreendimentoInputReport>();
当参数为字符串不返回任何内容时,whem为long []返回此oracle错误:
“Oracle.DataAccess.Client.OracleException:ORA-00932:提示信息不一致:esperava NUMBER obteve BINARY”
有人可以帮我吗?
最佳答案
使用SetParameterList
而不是SetParameter
。
关于c# - 如何在NHibernate中将参数传递给IN运算符?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2758417/