【发布时间】:2013-03-18 10:11:14
【问题描述】:
如果我从被调用者而不是调用者抛出错误,是否可以接受/希望?或者我应该从被调用者那里获取错误信息,然后从调用者那里抛出异常?哪一种是首选/渴望的方式?
public static List<ProductBuilder> GetProductBuilders(GetProductsRequest productsRequest)
{
List<ProductBuilder> productBuilders = new List<ProductBuilder>();
...
... // Some logics to populate productBuilders
if (productBuilders.Count == 0)
{
Logger.LogMessage(productsRequest.SessionId, "No ProductBuilders were created.");
throw new ProductException(ProductException.ExceptionCode.SaveFailed, "No Service has qualified.");
}
return productBuilders;
}
【问题讨论】:
-
空结果真的(总是)错误吗?
-
同意@HenkHolterman,在我看来,空集合应该被视为不是例外情况。我想补充一点,如果可能,空集合总是比返回 null 更可取。要加深最后一个概念,请阅读this。
标签: c# .net coding-style