我有幾種方法返回類型IEnumerable<T>
。這些方法DomainService
類的一部分,並且在客戶端上他們與InvokeOperation<T>
DRY(重構)使用回調的代碼?
public InvokeOperation<IEnumerable<T>> MethodA(string prm, Action<InvokeOperation<IEnumerable<T>>>
public InvokeOperation<IEnumerable<T>> MethodB(Action<InvokeOperation<IEnumerable<T>>>
返回類型產生
調用這些方法時,在回調的代碼基本上是相同的
void SomeMethodA(string someString, Action<ResultsArgs<string>> operationCompleted)
{
MyContext.MethodA(someString, c =>
{
// same code (operationCompleted parameter is used)
}, null);
}
void SomeMethodA(Action<ResultsArgs<string>> operationCompleted)
{
MyContext.MethodB(c =>
{
// same code (operationCompleted parameter is used)
}, null);
}
如何我可以重構這個,所以沒有重複的代碼?