как обрабатывать нулевые значения в этом запросе linq-sql - PullRequest
0 голосов
/ 25 мая 2011
var query = (from student in dataset.Students
             where student.subjectId == SubjectId || student.subjectId ==dataset.Subjects.FindBySubjecttId(SubjectId).PrimarySubjectId                 
                                 select student)

Приведенный выше запрос Linq to SQL завершается неудачно, если PrimarySubjectId равен нулю.

PrimarySubjectId может иметь нулевые значения в базе данных. Если для subjectId нет записи, я хочу PrimarySubjectId, который может быть нулевым. Как мне обработать нулевые значения для PrimarySubjectId?

1 Ответ

0 голосов
/ 07 сентября 2011
    var query = (from student in dataset.Students

                 where student.subjectId == SubjectId || 

 student.subjectId==dataset.Subjects.FindBySubjecttId(SubjectId).PrimarySubjectId                 
select student)

Поскольку ваш PrimarySubjectId допускает значение NULL, как указано в вашем операторе linq, свойству student.subjectid должно быть разрешено принимать значения NULL, делая его Nullable subjectId или int? subjectid.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...