Я только что загрузил поставщика Linq для NHibernate, и просто немного взволнован. Но я не знаю синтаксис Linq настолько хорошо.
Я могу возвратить целые объекты из запроса как это:
var query = from foo in session.Linq<Kctc.BusinessLayer.Domain.Case>()
where foo.CaseNumber > 0
select foo;
И я могу выбрать единственное свойство как это:
var query = from foo in session.Linq<Kctc.BusinessLayer.Domain.Case>()
where foo.CaseNumber > 0
select foo.Id;
Но как я выбрал бы два свойства, например, нечто. Идентификатор и нечто. Панель? Или разве который не возможен?
Спасибо
David
Используйте анонимную проекцию:
var query = from foo in session.Linq<Kctc.BusinessLayer.Domain.Case>()
where foo.CaseNumber > 0
select new { foo.Id, foo.Bar };
Вы должны создать новый анонимный
тип, который будет доступен только в текущей области (т.е. его нельзя вернуть из метода и т. Д.)
var query = from foo in session.Linq<Kctc.BusinessLayer.Domain.Case>()
where foo.CaseNumber > 0
select new { foo.Id, foo.Bar };
Или вы можете создать собственный класс и заполнить его.