2010-05-03 6 views
5

HALLO,Wie übergeben Sie einen Parameter an IN Operator in NHibernate? So::

Ich versuche, eine lange Reihe für eine benannte Abfrage (native SQL) für in einer IN-Anweisung verwenden passieren

(...) WHERE Identificator IN (: pides)

habe ich versucht, meine Iden passieren, so lange []:

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

und als String

Wenn der Parameter ist eine Zeichenfolge Rückkehr nichts, whem ist ein langer [] senden Sie dieses Orakel Fehler:

„Oracle.DataAccess.Client.OracleException: ORA-00932: tipos de dados inconsistentes: esperava NUMBER erzielte keine BINARY "

Jemand kann mir helfen?

+0

http://stackoverflow.com/questions/2388021/parametrising-a-hql-in-clause-using-hqlbasedquery –

Antwort

10

Verwenden Sie SetParameterList statt SetParameter.