gpt4 book ai didi

c# - 如何过滤掉catch block

转载 作者:行者123 更新时间:2023-11-30 19:37:24 25 4
gpt4 key购买 nike

如果抛出 SP.ServerException,我需要return false 阻止日志记录。但在所有其他情况下,我也需要进行日志记录并 return false

try
{
folder = GetFolderByRelativeUrl(folderRelativePath);
}
catch (SP.ServerException serverEx)
{
//if file is not found the logging is not need
if (serverEx?.Message == "File not found")
{
return false;
}
//how i can go from here
}
catch (Exception ex)
{
//to there
Log(ex.Message);
return false;
}

我知道解决方案可能是

try
{
folder = GetFolderByRelativeUrl(folderRelativePath);
}
catch (Exception ex)
{
//if file is not found the logging is not need
if (!(ex is SP.ServerException && ex?.Message == "File not found"))
{
Log(ex.Message);
}

return false;
}

最佳答案

试试 when 关键字:

try
{
folder = GetFolderByRelativeUrl(folderRelativePath);
}
catch (SP.ServerException serverEx) when (serverEx.Message == "File not found")
{
return false;
}
catch (Exception ex)
{
//to there
Log(ex.Message);
return false;
}

关于c# - 如何过滤掉catch block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38187691/

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