У меня есть запрос Linq2Sql, который выглядит следующим образом:
var data = from d in dc.GAMEs
where (d.GAMEDATE + d.GAMETIME.Value.TimeOfDay) >= DateTime.Now
&& d.GAMESTAT == 'O' && d.GAMETYPE == 0 select d;
Resharper подчеркивает «d.GAMETIME.Value.TimeOfDay» синим цветом и говорит, что это возможное исключение System.InvalidOperationException. Хотя я понимаю, что если бы это был код на C #, ссылка на Value без проверки, имеет ли оно значение, была бы такой, я не уверен, верно ли это для запроса Linq.
Фактический сгенерированный SQL выглядит ужасно, и мне хочется сжечь глаза, но я не вижу ничего похожего на пустую ссылку. Могу ли я смело игнорировать это?
(на данный момент игнорировать другие проблемы, например, если он возвращает ожидаемые результаты)
EDIT:
После дальнейших размышлений я вижу, как приведенное выше может вызвать исключение в запросе LinqToObjects и, возможно, другие виды (XML?). Так что да, я думаю, что Решарпер просто в безопасности.