2014-09-22 71 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: