我想基于xpath过滤器从SQL 2008数据库中获取行。我有以下查询。
Select * FROM OrderQueue where OrderXml.value(N'(/Order[1]/OrderLinesList[1]/OrderLine[1]/VoucherNo[1])', 'varchar(50)') = '10127112-BUY2732644'
我尝试了两种方法,但他们都不断给我错误。
1)
ISQLQuery query = Session.CreateSQLQuery(string.Format(
"Select * FROM OrderQueue where OrderXml.value(N'(/Order[1]/OrderLinesList[1]/OrderLine[1]/VoucherNo[1])', 'varchar(50)') = '{0}'", voucherNumber));
return query.SetResultTransformer(new DistinctRootEntityResultTransformer()).List<OrderQueue>() as List<OrderQueue>;
2)
ISQLQuery query = Session.CreateSQLQuery(string.Format(
"Select * FROM OrderQueue where OrderXml.value(N'(/Order[1]/OrderLinesList[1]/OrderLine[1]/VoucherNo[1])', 'varchar(50)') = '{0}'", voucherNumber));
return query.List<OrderQueue>() as List<OrderQueue>;
值&#34; System.Object []&#34;不属于&#34; OrderQueue&#34;而且不可能 用于此通用集合。参数名称:值
我希望通过流利的nhibernate获得结果。不幸的是,我的nhibernate不值得夸耀,因此我需要一些建议。
非常感谢任何帮助。
谢谢, jankajg