Форум программистов, компьютерный форум, киберфорум
Наши страницы

LINQ

Войти
Регистрация
Восстановить пароль
 
maksimka2112
1 / 1 / 0
Регистрация: 24.04.2010
Сообщений: 47
#1

Сортировка внутреннего подзапроса - LINQ

04.02.2018, 15:39. Просмотров 264. Ответов 0
Метки нет (Все метки)

Использую Code First. 2 Модели: User и Event, многие-ко-многим. Нужно вывести по UserId характеристику пользователя (User) и события, которые к нему относятся (Event: EventDate, Name, DateForDisplay ). События нужно упорядочить по дате (EventDate): прошедшие по возрастанию, будущие по убыванию.
Ключ - id.

Если делать так:
C#
1
2
User viewModel = db.Users.Find(id);
return View(viewModel);
то выведется пользователь с событиями, которые не упорядочены по дате.

Можно сделать так (EventIndexData - промежуточная модель с
public IEnumerable<Event> Events { get; set; }
public IEnumerable<User> Users { get; set; }
)

C#
1
2
3
4
5
var viewModel = new EventIndexData();
 
viewModel.Users = db.Users
            .Include(i => i.Events)
            .Where(i => i.UserId == id);
Выводит аналогично предыдущему. Хочу добавить select:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
            var viewModel = new EventIndexData();
 
            viewModel.Users = db.Users
            .Include(i => i.Events
                .Select(
                    ie => new {
                        Users = ie,
                        EventDate = ie.EventDate,
                        Name = ie.Name,
                        DateForDisplay = ie.DateForDisplay
                    }).OrderBy(ie => ie.EventDate)
             )
            .Where(i => i.UserId == id);
Но пишет ошибку. Как исправить?

Добавлено через 48 минут
Ошибка такая:
The Include path expression must refer to a navigation property defined on the type. Use dotted paths for reference navigation properties and the Select operator for collection navigation properties
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2018, 15:39
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сортировка внутреннего подзапроса (LINQ):

Сортировка слов текстового файла путём слияния данных из файла и заданного внутреннего массива - C++
Здравствуйте. Имеется задание, которое я ни в коем случае не прошу за меня сделать. Мне непонятно пару моментов, которые бы мне...

Выборка из подзапроса - Firebird/InterBase
Почему не работает вот такая конструкция: select count(*) from (select distinct pal.allians_id from partsinallians pal) Пишет: ...

Создание подзапроса - MS Access
есть такой запрос: SELECT Накопитель.Объём, Накопитель.Цена, Накопитель.Название_Накоп FROM Накопитель WHERE...

Запрос без подзапроса - SQL Server
Помогите пожалуйста избавиться от подзапроса: SELECT Nz, FROM HousPodsParams WHERE ( NOT IN (SELECT ParamsId FROM HousPodsKeysParams...

Создание подзапроса в запросе - MySQL
Помогите пожалуйста!Есть 3 таблицы elements : id_elem,naimenovanie; znacheniya: id_elem,ip_param,znachenie; parametri:...

Слияние строк подзапроса - MySQL
Подзапросом возвращается таблица с результирующей слитой колонкой SELECT CONCAT('{',call,'*|*',source,'*|*'....... вопрос в том как...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2018, 15:39
Привет! Вот еще темы с ответами:

Определение максимального значения подзапроса - MySQL
Имеется таблица id (int) | title (varchar) | author (int) | filename (varchar) | views (int) | Получите максимальное значение отношения...

Получить псевдоним поля из подзапроса - MySQL
Прошу подсказать, что я делаю не так и вообще возможно ли такое Есть таблица сущностей, ID + набор атрибутов. Суть в том, что...

Нужен запрос без подзапроса - MySQL
Использую вот такой запрос чтобы узнать 'id' все повторяющихся значений в столбце 'ru' SELECT `id` , `ru` FROM `table` WHERE `ru` IN...

Как вытянуть столбец из подзапроса - Oracle
Необходимо создать представление, для получения менеджеров которые имеют более 5 подчиненых. Представление должно содержать следующие...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru