Реализация IDispoable в интерфейсе - PullRequest
1 голос
/ 15 июля 2010

У меня есть ситуация, когда я определяю интерфейс, а затем использую его напрямую, например:

Dim x as IWhatever = new implementationOfIWhatever()

Это нормально, но creationOfIWh независимо от того, что также реализует IDispoable, поэтому я хочу иметь возможность сделать x.Dispose или в идеале Using x, но получаю ошибку, что это не объявлено или должно реализовывать IDispoable как IW, что, конечно, не определяет Утилизируйте или внедряйте IDispoable.

Как я могу создать контракт, который IWh независимо будет также реализовывать IDispoable, или я не могу этого сделать и должен добавить .Despose к моему интерфейсу и принять я не могу использовать Using.

1 Ответ

2 голосов
/ 15 июля 2010

Сделать IWhatever наследованным от IDisposable. Это заставит implementationOfIWhatever реализовать метод Dispose и позволит вам использовать IWhatever экземпляров с Using.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...