2010-05-03 27 views
5

HI,Làm thế nào vượt qua một tham số để IN Operator trong NHibernate?

Tôi đang cố gắng, vượt qua một mảng dài cho một truy vấn tên (sql mẹ đẻ) để sử dụng trong một tuyên bố trong: Như thế này:

(...) ĐÂU TRÊN Identificator (: pIdes)

tôi đã cố gắng vượt qua IDEs tôi chừng nào []:

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

và như là một chuỗi

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

Khi tham số là một chuỗi lợi nhuận gì, whem là một chặng đường dài [] trả về lỗi oracle này:

"Oracle.DataAccess.Client.OracleException: ORA-00.932: tipos de dados inconsistentes: esperava SỐ obteve Binary "

Ai đó có thể giúp tôi?

+0

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

Trả lời

10

Sử dụng SetParameterList thay vì SetParameter.

Các vấn đề liên quan