このコンテキストでは、イベントの処分と退会をすぐに呼び出せますか? context_は、新しいものを作成することによって本質的に開始し停止する簡単なステートマシンを管理するために使用されます。C#Dispose()、イベントからの退会
class ClassA
{
StateContext context_;
void SomeMethod()
{
if(context_ != null)
context_.Dispose();
context_ = new StateContext();
}
class StateContext : IDisposable
{
SubClassA()
{
//Subscribe to an event
}
void Dispose()
{
//unsubscribe to an Event
}
}
}
いいえ、あなたはIDisposable契約に違反しています。契約違反には注意が必要であり、コメントが多い。クラスが公開されていない限り、あなたはそれを手放すでしょう。 –
実際のコードが本当にサンプルコードに似ていれば、本当に 'Dispose'を' Unsubscribe'にして、 'IDisposable'を実装するのではなく、"私の行うメソッドを作ることを許されていますか?欲しいロジック " – SimpleVar