每当 Resharper 遇到这样的代码时:
(treeListNode.Tag as GridLine).AdvertiserSeparation = 5;
它为您提供了一个可能的修复(因为 treeListNode.Tag as GridLine 可能为空)。它说:“替换为直接投射”,它将代码变成以下内容:
((GridLine) treeListNode.Tag).AdvertiserSeparation = 5;
这很棒。但是,当它遇到这样的代码时:
GridLine line = treeListNode.Tag as GridLine;
line.AdvertiserSeparation = 5;
Resharper 只是显示一个警告“可能的 System.NullReferenceException”,但没有让我“用 Direct Cast 替换”。有没有办法让 Resharper 为我提供这种重构,因为它已经有了它?