use*_*755 2 c# idisposable class
我有一个通用ServiceResult<T>类,我在我的服务层中使用它来提供包含在基本信息中的通用返回类型,以支持添加错误,以及调用是否成功等。
在处理我的服务时,我现在有一个电子邮件服务,它当前返回一个实现 IDisposable 接口的 MailMessage。我不太确定如何构建我的类来处理这个问题,因为我最终想将我的服务调用包装在 using 语句中,以确保正确处理泛型类型,但目前我布置一次性实现的方式是“完全削减它。这会像添加一个额外的子句让类本身实现 IDisposable 一样简单,即使包装类本身没有任何要处理的东西吗?
public class DisposableServiceResult<T> where T : IDisposable
{
private List<string> Errors { get; } = new List<string>();
private T _result;
public T Result { get { return _result; } }
// Other various properties and and methods
public void Dispose()
{
_result.Dispose();
}
}
Run Code Online (Sandbox Code Playgroud)
using (var emailBuildResult = await services.emailBuilder.BuildEmailFromEntityAsync(client, "TemplateName", "myemail@email.com"))
{
// do stuff here
}
Run Code Online (Sandbox Code Playgroud)
该类应声明为
public class DisposableServiceResult<T> : IDisposable where T : IDisposable
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1050 次 |
| 最近记录: |