相关疑难解决方法(0)

.NET Guard类库?

我正在寻找提供保护方法的库或源代码,例如检查空参数.显然这个构建起来相当简单,但我想知道.NET是否还有.谷歌的基本搜索没有透露太多信息.

.net code-contracts

16
推荐指数
2
解决办法
1万
查看次数

获取NullReferenceException的Null对象

我在工作中遇到了一个问题,它会导致很多"对象引用没有设置为对象的实例"错误.确定导致异常的空对象的最佳方法是什么?

我可以尝试在一个地方捕获所有这些异常,但无法找到一种方法来确定null的成员,以便我可以正确地修复它.

try {
}
catch (Exception ex)
{
if (ex is ReferenceNullException)
ex.??
}
}
Run Code Online (Sandbox Code Playgroud)

因为我可以查看堆栈跟踪,所以认为你也可以得到导致错误的原因是合理的.

.net c#

7
推荐指数
1
解决办法
1万
查看次数

你能捕获抛出 NullReferenceException 的对象的名称吗?

有没有办法找出是什么特定对象导致了NullReferenceException?我已经阅读了关于故障排除NullReferenceException页面,它谈到了在调试器中检查变量并查看异常消息。

如果异常是在生产代码中引发的,因此您无法运行调试器来检查变量怎么办?异常消息显示了堆栈跟踪,因此您可以查看抛出异常的方法,但它没有说明是哪个特定对象null

我希望能够将对象的名称添加null到错误消息中,这样当我查看用户的报告并遇到 . 时NullReferenceException,我可以轻松查看对象是什么null并修复它。有谁知道这样做的方法吗?

我也发现这个问题提出了同样的问题,但它是从 2011 年开始的,我不知道从那时起是否有任何变化。

编辑这个问题,这是标记为重复的确是重复的,但也是很老的(2008)。从那以后有什么改变吗?

编辑 2:我在谷歌搜索这个问题时发现了一点。Visual Studio 可以告诉你是什么抛出了NullReferenceException; 有什么方法可以利用它将其添加到日志文件中吗?

c# logging nullreferenceexception

5
推荐指数
1
解决办法
401
查看次数