6

我在 C# 中的部分代码中抛出 ArgumentNullException。我想捕获并显示我的异常的错误消息。但没有参数名称。我想将参数名称传递给异常构造函数。

throw new ArgumentNullException("myParameter", errorMessageStringVariable);

如果我打电话error.Message,我会得到类似的东西

errorMessageStringVariable 参数名称:myParameter

我只想显示errorMessageStringVariable。是否可以使用 ArgumentNullException,而对 error.Message 没有某种格式?

4

2 回答 2

11

如果要构造没有名称的异常,请使用:

new ArgumentNullException(null, errorMessageStringVariable)

但如果你想展示一个设置的ArgumentNullException地方paramName,答案似乎是否定的。您必须对Message属性使用字符串操作。

您可以创建一个派生自ArgumentNullException.

于 2014-11-06T09:00:34.580 回答
0

如果你打电话:

new ArgumentNullException(null, errorMessageStringVariable)

异常消息将是:

值不能为空。参数名称:errorMessageStringVariable

如果您改为使用:

new ArgumentNullException(string.Empty, errorMessageStringVariable)

您只会收到错误消息。

于 2017-11-17T10:26:06.293 回答