Теперь я добавил еще одно поле в один из моих файлов DbModel и Models, ссылаясь на другой.
В основном:
Код: Выделить всё
class Blog { ... public BlogCreationRequest? creationRequest = null;} // same dto field
class BlogCreationRequest { ... public Blog? blog? = null;} // same dto field
Я создал базовые файлы профиля и выполнил сопоставление для отношений в файлы dbContext.
Теперь проблема:
При выборке с помощью метода ProjectTo с помощью linq я получаю исключение «последовательность не содержит элементов» во время выполнения. При извлечении и сопоставлении в памяти, например _mapper.Map(), он отображается без проблем (хотя требуются более глубокие данные и для других полей). Я извлекаю данные с помощью FirstAsync, создавая объект для извлечения и возврата прямо перед ним (успешно).
Тестирование извлечения без ProjectTo также работает. Я получаю необработанную запись перед сопоставлением и могу выполнить явное сопоставление после этого.
Как мне отладить это, в чем может быть проблема? Дерево выражений казалось правильным, имитируя те же выражения, что и для других необязательных отношений, которые могут быть нулевыми.
Я пробовал проверять профили (BeforeMap или sth, хотя и не слишком активно), проверка на ноль ничего не дает. Изменение опциональности с помощью sth как нуля! тоже не помогло.
Подробнее здесь: https://stackoverflow.com/questions/790 ... p-sequence