【发布时间】:2016-11-06 08:40:32
【问题描述】:
如果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;
}
【问题讨论】:
-
你的代码有什么问题?这似乎是合理的。我更喜欢针对特殊异常情况的显式单独的 catch 块,而不是类型检查 if 语句。
-
我想我的代码一切正常 =)
标签: c# .net exception try-catch