带有不平凡ParamName
的ArgumentException
有一个换行符Message
,其最后一行描述了它的ParamName
;例如,new ArgumentException("Some error", "myParam").Message
是寻找ArgumentException.Message的非价值部分
Some error
Parameter name: myParam
现在,在使用我们会考虑黑匣子现在图书馆和产生ArgumentException
s的非常有用的错误信息,我多么希望自己采取这些错误信息,添加给他们一些背景,并最终将信息呈现给我的用户。在这样做时,我想摆脱异常消息的“参数名称”部分,因为这只在开发过程中才有用。
所以问题是:如何以最优雅的方式摆脱包含“参数名称”的行? ArgumentException
的ParamName
属性允许我自己获取参数名称,但似乎没有直接的方式来获取排除参数名称的消息。我可以做的一件事就是简单地取Message
以外的所有行,但只适用于ParamName
不是null
;我可以明确地检查这一点,但在这一点上,我正在执行一堆解析来解决看起来像.NET一样的东西。