Хотя есть много Q & по сравнению с IDisposable
, которое можно найти на SO, я еще не нашел ответа на этот вопрос:
Я обычно следую практике, когда один из моих классов владеет объектом IDisposable
, тогда он также реализует IDisposable
и вызывает Dispose
на принадлежащем объекте. Однако недавно я столкнулся с классом, который явно реализовал IDisposable
, таким образом, не позволяя мне напрямую вызвать Dispose
, заставляя меня бросать его, который я нашел раздражающим и ненужным.
Итак, вопрос: зачем и когда нужно использовать явную реализацию интерфейса IDisposable
? Я знаю, что есть совершенно хорошая и действительная причина для реализации интерфейса явно, но в отношении IDisposable
причина мне не совсем понятна.