我有一堂课
public class MyService
{
public IList<Exception> ExList {get; private set;}
public bool HasErrors { get { return ExList.Count > 0; } }
public MyMethod()
{
ExList.Clear();
//- do some logic ---
}
}
我想调用 MyMethod() 并检查是否发生错误。像这样的东西
var service = new MyService();
service.MyMethod();
if(service.HasErrors)
{
// - do some logic
}
service.MyMethod();
if(service.HasErrors)
{
// - do some logic
}
但我必须写“ExList.Clear();” 为 MyService 类中的每个方法手动行。问题是 - 有什么解决方案可以避免这种情况吗?
我需要类似的东西
public class MyService
{
public IList<Exception> ExList {get; private set;}
public bool HasErrors { get { return ExList.Count > 0; } }
private void Precondition()
{
ExList.Clear();
}
public MyMethod()
{
//- do some logic ---
}
}
每个方法的调用都会自动调用 Precondition()。