クラスがあります
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() が自動的に呼び出されます。