我目前正在try catch中查找一个属性是否被正确地设置为应该是的布尔值,就像这样...
public void RunBusinessRule(MyCustomType customType)
{
try
{
if (customType.CustomBoolProperty == true)
{
DoSomething();
}
else
{
throw new Exception("This is obviously false or possibly null lets throw up an error.");
}
}
catch(Exception)
{
throw;
}
}
现在,我遇到的问题是,我正在使用微软的源代码分析工具,它给我一个错误提示“CA2201: Microsoft.Usage: Object.RunBusinessRule(MyCustomType)引发了一个类型为'Exception'的异常,这是一个不够明确并且不应该由用户代码引发的异常类型。如果可能会抛出此异常实例,请使用其他异常类型。”
那么,我应该抛出什么样的异常才能足够符合微软的要求,适用于我的应用程序逻辑处理时所需的情况以及我希望“抛出”时的情况呢?