2010-05-03 106 views
5

HI,如何在NHibernate中將參數傳遞給IN運算符?

我想,通過一個名爲查詢多頭排列(本地SQL),用於在IN語句中使用: 像這樣:

(...) WHERE識別器IN (:pIdes)

我試圖通過我的IDE只要[]:

ctx.GetNamedQuery("NamedQueryName")           
        .SetParameter<long[]>("pIdes", Identificators) 
        .List<EmpreendimentoInputReport>(); 

和作爲字符串

ctx.GetNamedQuery("NamedQueryName")           
        .SetParameter<string>("pIdes", Identificators) 
        .List<EmpreendimentoInputReport>(); 

當參數是一個字符串任何回報,whem是一個長期的[]返回此Oracle錯誤:

「Oracle.DataAccess.Client.OracleException:ORA-00932:tipos德dados inconsistentes:esperava NUMBER obteve BINARY 「

有人可以幫助我嗎?

+0

http://stackoverflow.com/questions/2388021/parameterizing-a-hql-in-clause-using-hqlbasedquery – 2010-05-03 17:11:26

回答

10

使用SetParameterList而不是SetParameter

相關問題