C# Nullable.GetValueOrDefault()和Nullable.Value之间有什么区别?
C# Nullable.GetValueOrDefault()和Nullable.Value之间有什么区别?,c#,.net,.net-core,C#,.net,.net Core,Nullable.GetValueOrDefault()方法和Nullable.Value属性之间有什么区别?Nullable.Value如果Nullable.HasValue为false,则抛出异常Nullable.GetValueOrDefault()如果Nullable.HasValue为false,则返回类型的默认值。我猜其中一个会在“null”的情况下抛出,另一个不会……但这里有一个提示:单击该方法,按F1-BAM-您将获得MSDN帮助。我的错误是,我以错误的方式搜索,因此我第一次尝试
Nullable.GetValueOrDefault()
方法和Nullable.Value
属性之间有什么区别?Nullable.Value
如果Nullable.HasValue
为false,则抛出异常Nullable.GetValueOrDefault()
如果Nullable.HasValue
为false,则返回类型的默认值。我猜其中一个会在“null”的情况下抛出,另一个不会……但这里有一个提示:单击该方法,按F1-BAM-您将获得MSDN帮助。我的错误是,我以错误的方式搜索,因此我第一次尝试什么都没有得到。对不起,没人告诉我你没看文档。然而,你的问题中没有任何东西表明你确实读过它。GetValueOrDefault()
方法的备注部分特别指出:“GetValueOrDefault方法返回一个值,即使HasValue属性为false(与value属性不同,后者引发异常)。”这也是这里公认的答案所说的。如果您实际上已经充分阅读了文档,那么就不需要问这个问题。[待续]…误解文档并没有什么错,我有时自己也会这样做。英语不是我的母语,所以我有时会误解。但是当我问的时候,我会把我读过的和尝试过的东西都写进去。你没有,所以我猜你没有读文档。