在 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 關注
- 146 瀏覽
添加回答
舉報
0/150
提交
取消