nhibernate xpath数据库过滤器

时间:2013-08-05 14:53:17

标签: nhibernate fluent-nhibernate

我想基于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

0 个答案:

没有答案