gpt4 book ai didi

c# - 在 LINQ 中使用 Nullable DateTime 时可能出现 InvalidOperationException

转载 作者:太空宇宙 更新时间:2023-11-03 19:04:28 24 4
gpt4 key购买 nike

我有一些这样定义的变量:

DateTime? tempDateTime;

我也有这样的查询:

var recordWithMinDatetime =
locatedContracts.Where(t => t.OriginalDate.HasValue)
.OrderBy(t => t.OriginalDate.Value)
.FirstOrDefault();
if (recordWithMinDatetime != null)
tempDateTime = recordWithMinDatetime.OriginalDate.Value;

但是在 IDE 中,当我将鼠标悬停在最后一个作业上时,它显示 "Possible InvalidOperationException"

我也安装了 ReSharper,所以不确定它是来自 R# 还是 VS IDE,但我认为仍然是我应该关注的问题,但我不明白我做错了什么或它给我这个提示的非安全代码?

最佳答案

这可能是 R# 错误。我会忽略它。您已通过检查 LINQ 查询中的 HasValue 确保 OriginalDate.Value 不会引发异常。

R# 正在努力提供帮助,并且可能需要这样的检查:

if (recordWithMinDatetime != null && recordWithMinDatetime.OriginalDate.HasValue)
tempDateTime = recordWithMinDatetime.OriginalDate.Value;

但在您的情况下,此检查是多余的。

关于c# - 在 LINQ 中使用 Nullable DateTime 时可能出现 InvalidOperationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30579820/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com