У меня есть база данных поездов со всеми необходимыми полями, такими как Поезд, Маршрут, Станция, Пассажир, Резервирование и т. Д. Я хочу получать поезда между парой станций с помощью LINQ (я знаю SQL-запрос, но не могупреобразовать его в LINQ).Пожалуйста, кто-нибудь, помогите мне.
Еще одна вещь, я хочу метод расширения подход LINQ Queries (, а не такие ключевые слова, как from, in, выберите ), например,
var trains = _context.Trains.FirstOrDefault(a => a.Id == text);
SQL-запрос
SELECT Route.TrainId, Train.TrainName
FROM Route
INNER JOIN Train ON Route.TrainId=Train.TrainId
WHERE
(Route.StationId IN
(SELECT Source.StationId
FROM Route AS Source
INNER JOIN Route AS Destination ON Source.TrainId=Destination.TrainId
WHERE
(Source.StopNumber - Destination.StopNumber < 0)
AND
(Source.StationId = @Source)
AND
(Destination.StationId = @Destination)
)
)
Пожалуйста, прокомментируйте меня, если вы хотите больше подробностей, таких как структуры таблиц.Я получил структуру таблицы и запросы из онлайн-слайда.