ReSharper帮助:可能的NullReferenceException

ReSharper帮助:可能的NullReferenceException,resharper,nullreferenceexception,Resharper,Nullreferenceexception,当我访问HttpContext.Current.Request.UserHostAddress时,ReSharper会说“检查‘UserHostAddress’是否不为null”(它位于try/catch块中) 在另一个方法中,从请求对象获取以下属性: HttpContext.Current.Request.RawUrl ReSharper如何确定或“知道”请求不能为空?还是当前的?或HttpContext 这个框架对象链可能是一个不好的例子,但我想你明白了。R#使用它的包含为.NET框架内的类

当我访问
HttpContext.Current.Request.UserHostAddress
时,ReSharper会说“检查‘UserHostAddress’是否不为null”(它位于try/catch块中)

在另一个方法中,从请求对象获取以下属性:

HttpContext.Current.Request.RawUrl

ReSharper如何确定或“知道”请求不能为空?还是当前的?或
HttpContext

这个框架对象链可能是一个不好的例子,但我想你明白了。

R#使用它的包含为.NET框架内的类型(如你提到的ASP.NET类)提供这些代码注释

例如,Jetbrains将
HttpContext.Current
注释为可空的原因是在控制台应用程序(没有HTTP上下文的应用程序)中
HttpContext.Current
返回
null

,但我可以相信R#在那里?我真的只需要在之前检查HttpContext.Current而不是HttpContext,然后检查HttpContext.Current.Request吗?我的意思是如果我面前真的有这样一个对象链。