2014-09-22 108 views
0

我们编写了一些代码,这取决于使用IQueryable实例,所以我想我们坚持不得不使用ISession.Query<>()NHibernate Session.Query <>列列表?

在一个特定的情况下,我想只部分水合DBO,并排除NHibernate将生成的SELECT语句中的某些列。 使用Query<>时可以实现吗?

或者,有可能以某种方式从ICriteriaIQueryable(我认为ICriteria就可以实现我需要通过预测?)

+0

一些附加信息可以在这里找到:http://stackoverflow.com/questions/17881410/how-to-fill-just-requ IRED - 属性 - 的实体-fluentnhibernate – BluTuTh 2014-09-25 06:42:34

回答

1

预测在IQueryable以及支持。语法应该是这样的:

var query = session.Query<Employee>(); 
var list = query.Select(s => new Employee 
    { 
     FirstName = s.FirstName, 
     LastName = s.LastName, 
     ... 
    }) 
    .ToList(); 

新员工可能甚至有些DTO ...

的一些基本信息有关QueryOver投影API: