有人知道如何处理此错误吗?
cannot convert from 'System.Guid?' to 'System.Guid'
最佳答案
参见MSDN。
在这种情况下,仅使用myNullableVariable.Value
(如果您确定它具有值),否则使用(myNullableVariable.HasValue)?myNullableVariable.Value:somedefaulthere
(如果没有)。
如果可以忽略的话,也可以使用GetValueOrDefault()
,如果默认值是可空值确实为null时的默认值。
最后一种方法是:myNullableVariable.Value ?? defaultvalue
。
从技术上讲,MyType?
变量是幕后的Nullable<MyType>
。两者之间没有隐式或显式强制转换,因此您需要手动从Nullable
中提取值。我列出的第三种方法是最简洁(也是最好的方法),在大多数情况下这可能是最好的方法。