为了账号安全,请及时绑定邮箱和手机立即绑定

可空引用类型意外 CS8629 可空值类型对于临时变量可能为空

可空引用类型意外 CS8629 可空值类型对于临时变量可能为空

C#
MMTTMM 2023-08-20 14:45:51
在 C# 8 项目中,我使用可为 null 的引用类型,并收到意外的(或者至少对我来说意外的)CS8629 警告,bool singleContent = x.DataInt != null;bool multiContent = x.DataNvarchar != null;if (singleContent && multiContent){    throw new ArgumentException("Expected data to either associate a single content node or " +        "multiple content nodes, but both are associated.");}if (singleContent){    var copy = x.DataInt.Value; // CS8629 here    newPropertyData.DataNvarchar = $"umb://{type.UdiType}/{Nodes[copy].UniqueId.ToString("N")}";}我决定使用它GetValueOrDefault()作为解决方法,但我想知道如何向编译器证明如果检查x.DataInt则不能为空。singleContent请注意, 的类型x.DataInt是int?。
查看完整描述

目前暂无任何回答

  • 0 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信