Как правильно выбрать свойство необязательного каркаса сущности свойства навигации?
Меня беспокоит, что если свойство навигации будет нулевым, то при попытке доступа к нему будет выдана ошибка (необязательные свойства навигации).
Вот что я пробовал:
return await this.relatedCasesRepository
.GetAll()
.AsNoTracking()
.Where(rc => rc.FirstCaseId == caseId || rc.SecondCaseId == caseId)
.Select(rc => new RelatedCaseInfoDto
{
FirstCaseId = rc.FirstCaseId,
FirstCaseName = rc.FirstCase.Name,
SecondCaseId = rc.SecondCaseId,
SecondCaseName = rc.SecondCase.Name,
CaseRelationTypeId = rc.CaseRelationTypeId,
CaseRelationTypeName = rc.CasesRelationType?.Name,
Id = rc.Id
})
.ToArrayAsync();
Код: rc.CasesRelationType?.Name
выдает ошибку:
An Лямбда дерева выражений может не содержать нулевого оператора распространения.
Означает ли это, что я должен выполнить второй запрос, чтобы получить все свойства необязательного свойства навигации? Или есть способ запросить свойство необязательного свойства навигации в случае, если необязательное свойство навигации не равно нулю, а в противном случае возвращает ноль?