C#-Resharper表达式始终为false

给定以下代码块..

if (HttpContext.Current == null) return null;
if (HttpContext.Current.User == null) return null;
if (HttpContext.Current.User.Identity == null) return null;
return HttpContext.Current.User.Identity.Name;

Resharper告诉我,第三行总是错误的.考虑到身份是一种参考类型,Resharper如何保证?

解决方法:

ReSharper附带了所谓的“External Annotations”.

使用这些注释,R#假定特定的属性/参数/ …永远不能为null. (在Identity属性上按Crtl Shift F1后,应该看到[NotNull]属性注释.)

但是:此特定注释似乎是一个错误(请参见RSRP-398551),并且已在当前版本的外部注释中修复.

上一篇:在C#中进行类型转换的更好方法


下一篇:没有任何警告“参数从未使用”