解析动态集合

时间:2010-09-30 09:47:12

标签: c# linq nhibernate c#-4.0

我有以下系列(见图)。我想解析一下 名单。我试过NHibernate的“Transformers.AliasToBean”

像这样 var result = _session.CreateQuery(hql)                                 .SetResultTransformer(Transformers.AliasToBean(typeof运算(OrderProduct)))                                 .LIST();

我收到以下错误:

在“EStore.Domain.Projection.OrderProduct”类中找不到属性“0”的setter

在这个阶段,我会满足于将其解析为List。我如何使用linq执行此操作?alt text

public class OrderProduct
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public  decimal  Quantity { get; set; }
    }

2 个答案:

答案 0 :(得分:4)

要使用AliasToBean,您需要为选择列表显式指定别名:

select p.Id as Id,
       p.Name as Name,
       etc

答案 1 :(得分:1)

那样的东西不会起作用吗?

        var test = from object[] line in results
                   select new OrderProduct()
                   {
                       Id = (int)line[0],
                       Name = (string)line[1],
                       Quantity = (decimal)line[2]
                   };