Используйте функцию агрегирования в C # Linq для извлечения данных из CRM - PullRequest
0 голосов
/ 17 ноября 2018

Здесь я пытаюсь оценить условие максимальной даты (самой последней даты) и для этого я думаю, что я мог бы использовать функцию MAX ().

С точки зрения синтаксиса я не могу найти правильный путь. Здесь ниже мой запрос.

var sfcStatusQuery = (from Carrier in _orgContext.CreateQuery("account")
                                          join SafetyFitnessCert in _orgContext.CreateQuery("mot_safetyfitnesscertificate")
                                            on Carrier["accountid"] equals SafetyFitnessCert["mot_carriernumber"]
                                          where (SafetyFitnessCert["mot_expirydate"] == null && (int)SafetyFitnessCert["statecode"] == 0)
                                          where SafetyFitnessCert.FormattedValues["new_sfcstatusname"].ToString().Equals("Suspended")
                                          where ((int)Carrier["statecode"] == 0 && Carrier["mot_number"].Equals(carrierNumber))
                                          //where SafetyFitnessCert["mot_lastreviseddate"]
                                          select new
                                          {
                                              SafetyCertSuspFlag = "Y"
                                          }).FirstOrDefault();

В приведенном выше запросе комментируется условие условия, которое я пытаюсь исправить с помощью агрегатной функции MAX. Поскольку этот запрос может содержать / не содержать более одной записи со статусом «Приостановлено» для определенного номера оператора.

Пожалуйста, сообщите.

1 Ответ

0 голосов
/ 17 ноября 2018

Если я вас правильно понимаю, вы хотите, чтобы запись с этой датой была самой последней.В этом случае я бы просто отсортировал данные по этой дате по убыванию.Если вы сделаете это, в первой записи будет самая последняя дата, чем вы FirstOrDefault() и все готово.

, поэтому вместо where используйте order by SafetyFitnessCert["mot_lastreviseddate"] descending

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...