public void ValidateFailureDifferentLengths() { QueryParameters qp = new QueryParameters( new IType[] {NHibernateUtil.String}, new object[] {}); Assert.Throws<QueryException>(() => qp.ValidateParameters()); }
public void ValidateOk() { QueryParameters qp = new QueryParameters( new IType[] {NHibernateUtil.String}, new object[] {"string"}); qp.ValidateParameters(); }
public void ValidateFailureDifferentLengths() { QueryParameters qp = new QueryParameters( new IType[] { NHibernateUtil.String }, new object[] { }); qp.ValidateParameters(); }
public void ValidateNullParameters() { QueryParameters qp = new QueryParameters(null, null); qp.ValidateParameters(); }
public IList Find( string query, QueryParameters parameters ) { CheckIsOpen(); if( log.IsDebugEnabled ) { log.Debug( "find: " + query ); parameters.LogParameters( factory ); } parameters.ValidateParameters(); QueryTranslator[ ] q = GetQueries( query, false ); IList results = new ArrayList(); dontFlushFromFind++; //stops flush being called multiple times if this method is recursively called //execute the queries and return all result lists as a single list try { for( int i = 0; i < q.Length; i++ ) { IList currentResults; try { currentResults = q[ i ].List( this, parameters ); } catch( Exception e ) { throw new ADOException( "Could not execute query", e ); } for( int j = 0; j < results.Count; j++ ) { currentResults.Add( results[ j ] ); } results = currentResults; } } finally { dontFlushFromFind--; } return results; }