Я работаю над приложением .NET Core с Entity Framework Core 2.1 и Auto-Mapper 3.2. В следующем скрипте я получаю нулевое значение и получаю сообщение об ошибке, когда пытаюсь ProjectTo(myviewClass)
. Теперь я знаю, что могу проверить индивидуальное значение в следующем сценарии, выполнив команду * userRoleList.select(x=>x.ConsultationId) == null? null: projectTo
, но проблема в том, что ее коллекция такова, как применить подобную логику, как вы видите, я получаю коллекцию consultation
записей, в которой содержится ConsultationId
в userRoleLits
.
1008 * LINQ *
(from user in Context.Users
join userRole in Context.UserRoles on user.Id equals userRole.UserId into userRoleList
where (user.Id == (UserId ?? user.Id))
select new UsersWithAccessProfileDataView
{
UserId = user.Id,
UserName = user.Name,
Consultation = Context.Consultations.Where(x => userRoleList.Select(y => y.ConsultationId).Contains(x.Id)).ProjectTo<ConsultationDataView>() //need help here
}).OrderBy(x => x.UserName);
модель просмотра класса
public class UsersWithAccessProfileDataView
{
public Guid UserId { get; set; }
public string UserName { get; set; }
public IQueryable<ConsultationDataView> Consultation { get; set; }
}