尝试抓住糟糕的编程实践

本文关键字:编程 | 更新日期: 2023-09-27 18:32:45

我正在执行一个存储过程并返回一个字符串。字符串设置为返回 10"USER DOES NOT EXISTS",具体取决于条件。

只是想知道以下内容是否是一种糟糕的编程实践。

string result = _db.GetParameterValue(cmdObj, "@strMessage").ToString();
try
{
    int a = int.Parse(result);
    if (a == 1)
        Console.WriteLine("A");
    else
        Console.WriteLine("B");
}
catch
{
    Console.WriteLine(result);
}
Console.WriteLine(result);

尝试抓住糟糕的编程实践

最好是

专门匹配,而不是根据捕获失败的 int 解析来假设它是"用户不存在"。

尝试/捕捉/吞咽总是不好的做法。 如果要捕获异常,请记录它或抛出它。

您没有指定语言,因此假设它是 C#,int.TryParse()try/catch中的int.Parse要干净得多。

你应该使用tryParse不要把它包含在try catch块中。

 int outValue = -1;
 int.TryParse(result, out outValue);