У меня есть метод действий контроллера, который возвращает IQueryable
, у которого есть поле под названием «Sequence». Я хочу установить это поле после некоторых вычислений. Мой подход:Выполнение некоторых операций внутри оператора Select в LINQ<
AnswerDTO>
var answer = from dfi in _db.DiaryFormInstances
//Some Query with LINQ
select new AnswerDTO()
{
Value = dfit.Value,
//How to perform this operation?
Sequence = Convert.ToInt32(fti.ItemName.Substring(fti.ItemName.LastIndexOf("_")+1)),
LastModifiedDate = dfit.LastModifiedDate.Value,
LastModifiedByID = dfit.LastModifiedByID.Value
};
Как установить свойство Sequence, подобное этому в выражении select select?
Sequence = Convert.ToInt32(fti.ItemName.Substring(fti.ItemName.LastIndexOf("_")+1))
Если я выполняю запрос в своем методе действий, то я могу легко выполнить эту операцию. Но я хочу вернуть IQueryable, и я не хочу выполнять запрос внутри моего метода действий.
Я хочу, чтобы web api выполнил запрос, и после выполнения он правильно установит свойство Sequence.
Я вижу 'dfi' определено в запросе, но не используется в операторе отбора, тогда как' 'dfit' и fti' используются, но не определены – Moho
Emdadul, я добавил еще более надежный ответ что я тестировал в небольшом приложении на своей машине. Я удалил свой предыдущий ответ, поскольку, как оказалось, необходимые функции не были доступны в Linq для Entities. –