2

我对我的一个项目进行了代码分析,它给了我两个手指,即:

CA1063 正确实现 IDisposable 在“UserStore”上提供可覆盖的 Dispose(bool) 实现或将类型标记为密封。对 Dispose(false) 的调用应该只清理本机资源。对 Dispose(true) 的调用应该清理托管资源和本机资源。

...在这行代码上:

public class UserStore : IUserStore<User>, IUserPasswordStore<User>,  IUserClaimStore<User>

...和这个:

CA1063 正确实现 IDisposable 修改“UserStore.Dispose()”,使其调用 Dispose(true),然后对当前对象实例(Visual Basic 中的“this”或“Me”)调用 GC.SuppressFinalize,然后返回。

...在我的空处置:

public void Dispose()
{
    //
}

我可以这样用一只石化的土块刺杀两只鸟吗?

public override void Dispose()
{
    Dispose(true);
    GC.SuppressFinalize(this);
}

? 这是它的暗示吗?

更新

回答我的问题(有点),显然不是 - 我想我只是添加代码,看看代码分析是否会反馈渴望的“'NRBQ.API.UserStore.Dispose()':不合适发现覆盖的方法“

4

0 回答 0