ray*_*min 1 c# exception-handling
我正在尝试调用保存用户信息的Web服务.实质上,返回一个'completion'对象,其中包含服务调用的结果.我的代码可以压缩如下:
public bool SaveUserInformation(ArgsList args) {
CompletionObject results = SaveService(args);
if (results.Status == Failed)
throw SomeException("onoez D:");
return true;
}
Run Code Online (Sandbox Code Playgroud)
本质上,此方法返回一个布尔值,但该值永远不会为false.这对我来说有点奇怪,所以有更好的方法来解决这个问题吗?
谢谢!
为什么不回来void?如果抛出异常,那么你就会知道它.如果没有抛出,则表示您的函数已成功完成(返回true).
try
{
MyFunction();
//here you know it has successfully completed
}
catch(Exception e)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
但是,如果你要覆盖一个返回bool的虚函数,那么你当然总能返回true,因为你必须返回一些布尔值.想想看,你也可以回复假:)