我有一个类可以处理我的应用程序中与我的 WCF 服务的所有交互,似乎 MSDN 说在 WCF 中使用 Using)_ 语句是不好的 - 我可以看到为什么这是不好的并同意它 (http:/ /msdn.microsoft.com/en-us/library/aa355056.aspx)
我的问题是他们建议的实现方法将意味着我有 10 个方法 [作为我的服务中的 10 个公共方法],它们将具有相同的结构代码,这当然不遵循 DRY 原则 - 代码看起来类似于以下:
try
{
results = _client.MethodCall(input parameteres);
_client.Close();
}
catch (CommunicationException)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
}
catch (TimeoutException)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
}
catch (Exception ex)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
throw;
}
这还没有任何日志记录,但当然,当我开始记录它时,我将不得不在近 10 个不同的地方添加日志记录工作
有人对我如何在重用代码方面更加足智多谋有任何建议吗
谢谢
保罗