2 回答
![?](http://img1.sycdn.imooc.com/56fb3e3d0001a10301000100-100-100.jpg)
TA贡献1836条经验 获得超5个赞
如果你想捕获异常并处理它,一种方法是使用像这样的返回对象:
private OperationResult GetData()
{
List<int> theData = new List<int>();
try
{
theData = ProcessThatGetsData(); //Error occurs in here
return new OperationResult { Success = true, Data = theData };
}
catch (Exception exc)
{
return new OperationResult { Success = false };
}
return theData; //What should be returned here?
}
public class OperationResult
{
public bool Success { get; set; }
public IList<int> Data { get; set; }
}
这是一个选项,但是我的偏好是不将 try catch 语句放在此处,只放在您真正需要它的层……在这种情况下,您的代码不需要更改或担心返回类型。
无论您在何处调用 GetData 方法,都将调用放在 try/catch 语句中,您应该没问题。
请记住,始终在必须处理异常的级别处理异常,不要过度处理。
- 2 回答
- 0 关注
- 116 浏览
添加回答
举报