Если условие else не работает в запросе linq
У меня есть этот код :
var vr = (from s in context.GRI_Package //where (ISSTUDENT == true ? s.StudentID == StudentUserID : s.TutorUserID == TutorUserID) //where (ISSTUDENT == true ? s.StudentID == StudentUserID : (s.TutorUserID == TutorUserID && s.StudentID == StudentUserID)) where (ISSTUDENT == true ? (s.TutorUserID == 0 || s.StudentID == StudentUserID) : (s.TutorUserID == TutorUserID && s.StudentID == StudentUserID)) //where s.TutorUserID == TutorUserID && s.StudentID == StudentUserID select new GetSessionpackageInfo { PackageID = s.PackageID,
}).Список();
ВР.Дамп();
здесь, если еще условие не просыпается, есть ли какая-то синтаксическая ошибка ?
пожалуйста, помогите мне
Что я уже пробовал:
Я попробовал это условие
где (ISSTUDENT == правда ? (С. TutorUserID == 0 || С. StudentID == StudentUserID) : (сек.TutorUserID == TutorUserID &амп;&амп; ы.StudentID == StudentUserID))
Richard MacCutchan
Предложение WHERE сводится к True или False,и первое выражение выглядит supect. Ты этого хочешь?
Maciej Los
Правильное использование ? оператор[^] есть: condition ? first_expression : second_expression;
Видеть: ?: Оператор (Ссылка На C# )[^]
Итак, чего вы пытались достичь?