Убедитесь, что lowdate
не меньше 1/1 / 1753.
Если вы попытаетесь указать дату до этого, EF преобразует ее и передаст в ваш запрос. Кроме того, вам не нужно использовать DateTime.MinValue
в запросе, а то, что будет вашим минимумом:
DateOfBirth = ((s.Date_Of_Birth == null) || (s.Date_Of_Birth <= lowdate)) ?
new DateTime(1753,1,1) : s.Date_Of_Birth.Value;
Помните, что в EF запрос на сервере компилируется и преобразуется в SQL, поэтому все значения также должны быть там подходящими.
При этом я лично предпочел бы хранить DateOfBirth
как DateTime?
(обнуляемый тип) вместо использования "магического значения" (DateTime.MinValue
) для хранения нулевых или недопустимых значений в базе данных.