Как использовать два метода substring () в условии соединения в linq - PullRequest
0 голосов
/ 21 июня 2020

Я реализую asp. net основной проект. У меня есть следующий запрос:

var numerator = from t1 in _context.Apiapplicant
                            join t2 in _context.ApiApplicantHistory on t1.Id equals t2.ApiApplicantId
                            join t3 in _context.EntityType on t2.LastReqStatus equals t3.Id
                            join t4 in mytotal on new { t2.Date.Substring(0,4), t2.Date.Substring(2,5) } equals new { t4.Year, t4.Month }

....

Моя проблема в том, что в последней строке я хочу присоединиться к mytotal с данным условием, однако выражение t2 .Date.Substring (0,4), t2.Date.Substring (2,5)} равно новому {t4.Year, t4.Month} ... есть ошибка. Я признателен, если кто-нибудь скажет мне, как я могу написать такое условие.

1 Ответ

1 голос
/ 21 июня 2020

Когда вы вызываете метод для создания члена анонимного объекта, вам необходимо назначить его имени члена, в противном случае будет выдана ошибка:

Недопустимый декларатор члена анонимного типа. Члены анонимного типа должны быть объявлены с назначением члена, простым именем или доступом к члену .

Измените последнюю строку на:

join t4 in mytotal on new { Year = t2.Date.Substring(0,4), Month = t2.Date.Substring(2,5) } equals new { t4.Year, t4.Month }

Надеюсь, вы найдете это полезным .

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