gpt4 book ai didi

.net - Try Catch 错误处理的最佳实践

转载 作者:行者123 更新时间:2023-12-03 18:09:32 24 4
gpt4 key购买 nike

我试图避免在捕获时返回不正确的值,但我找不到比这更好的解决方案:

    private SecurityLevel ApiGetSecurityLevel()
{
try
{
return _BioidInstance.GetSecurityLevel();
}
catch
{
return SecurityLevel.High;
}
}

有没有更好的方法来做到这一点,所以我不会返回不正确的值?我无法更改 SecurityLevel 枚举。

最佳答案

不要捕获异常。允许异常“冒泡”以强制调用者/调用者处理设置默认安全值。

如果你真的想返回一个值,那么使用 Nullable<SecurityLevel>SecurityLevel? .

private SecurityLevel? ApiGetSecurityLevel() { 
try {
return _BioidInstance.GetSecurityLevel();
}
catch {
return null;
}
}

然后用作:
if (ApiGetSecurityLevel().HasValue == false) {
// use default security level
}

关于.net - Try Catch 错误处理的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3426949/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com