0
我想在NH標準中使用Expression.Sql,但重載不起作用,並且沒有可找到的文檔。具有多個參數的NHibernate Expression.Sql
我在哪裏輸入參數?
我有一個NH DetachedCriteria,但我必須使用SQL表達式,因爲eit在2個方向上是不可取的。
所以我添加此
criteria.Add(Expression.Sql(@"(
UPPER(RIGHT(RTRIM(LTRIM('?')), ?)) like '%'+UPPER(RIGHT(RTRIM(LTRIM(?)), ?))
OR UPPER(RIGHT(RTRIM(LTRIM(?)), ?)) like '%'+UPPER(RIGHT(RTRIM(LTRIM('?')), ?))
) and len('?') >= ?",
new Object[]{
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
"aaa",
}
, new NHibernate.Type.IType[]{
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String,
NHibernateUtil.String
}
));
我不斷收到索引越界異常
的我出示擔保的參數相匹配。即使是這個錯誤,我也會看到一個帶有110'?'和10個參數的查詢。
我怎麼可能做trhios?
可能的重複[NHibernate:hql到標準查詢 - 需要幫助](http://stackoverflow.com/questions/1438595/nhibernate-hql-to-criteria-query-help-需要)或http:// stackoverflow .com/questions/1891901/nhibernate-hql-with-named-parameter – MichaC
不應該給RIGHT一個整數作爲第二個參數嗎?另外,由於整個查詢的標準似乎不變,所以我很困惑。它似乎並不涉及處理的行(對象名不能是sql查詢中的參數)。一個錯字:最後一個「」aaa「」後面的逗號。 – jbl