Я недавно обновил свой провайдер Linq до нового AST. (NH3 на NuGet)
С предыдущим провайдером я использовал linq для выполнения «встроенных проекций»
в мой DTO "
например
from o in Session.Query<MyObject>()
select new MyObjectDTO {
Name = o.Name,
SubName = o.OtherObject.Name,
Sub2NAme = o.OtherObject2.Name
}
и это сгенерирует
SELECT o.Name, sn1.Name, sn2.Name FROM .....
JOIN.... JOIN....
заявление.
Как только я обновил свой провайдер, я обнаружил, что
выстрелил (Мой проектируемый объект более сложный, чем выше).
Я наткнулся на Fetch / FetchMany, которые могут помочь с номером
запросов, но, насколько я могу судить, это означает, что полный объект будет
возвращайся для каждого сплющенного поля, которое мне нужно.
Есть ли способ получить наименьшее возможное количество столбцов, необходимое для выбора проекции, вместо загрузки полного графа объекта в проект с помощью?
Спасибо,
Крис