Существует DPEG, Дублирующийся менеджер Медиа , но его код не открыт. Это - очень старый инструмент - я не забываю использовать его в 2003.
Enumerable.FirstOrDefault - один из методов расширения в классе Enumerable, который не имеет соответствующего элемента синтаксиса LINQ. Единственный способ привязать к этому методу - использовать синтаксис вызова метода.
Вы можете избежать временного, выполнив следующее
var bestCar = (from c in cars
orderby c.Price
select c).FirstOrDefault();
var bestCar = (from c in cars
orderby c.Price
select c).FirstOrDefault()
ИЛИ
var bestCar = cars.OrderBy(c => c.Price).FirstOrDefault()
Нет способа сделать это. LINQ используется для определения запроса. Это на самом деле не вызывает оценки, тогда как выполнение FirstOrDefault
(или перечисление поверх него) выполняет запрос.
var bestCar = (from c in cars
orderby c.Price
select c).FirstOrDefault();
Извините, я не прочитал ваш вопрос полностью, похоже, это именно то, что вы не хотите делать.