. NET Core 3.1.2. Any () error «При вызове из« VisitLambda »перезапись узла типа« System.Linq.Expressions.ParameterExpression » - PullRequest
0 голосов
/ 28 февраля 2020

"InvalidOperationException: при вызове из« VisitLambda »перезапись узла типа« System.Linq.Expressions.ParameterExpression »должна возвращать ненулевое значение того же типа. В качестве альтернативы переопределите« VisitLambda »и измените его на not посещать детей этого типа. "

Я получил эту ошибку при использовании Any (). Без Any (), без ошибок.

@model List<WebApplication10.Models.UserCourse>
@{
     var db = new WebApplication10.Models.TestContext();
     var list = db.Course.Select(x => new SelectListItem()
     {
         Value = x.Code,
         Text = x.Name,
ERROR -> Selected = Model.Any(y => y.Course == x.Code)
     }).ToList();

     if (list != null && list.Any())
     {
         for (int i = 0; i <= list.Count() - 1; i++)
         {
              <input type="hidden" asp-for="@list[i].Value" />
              <input type="hidden" asp-for="@list[i].Text" />
              <input type="checkbox" asp-for="@list[i].Selected" /> @list[i].Text
              <br />
         }
     }
}

Этот работал нормально в старом. net core 2.2. Но новый. net core 3.1.2 получил ошибку. Если я делаю Any (), проверяя внутри l oop, это работает нормально. Как решить Any () в Select () linq?

...