Должен ли я использовать "использование" на моем SitkaSoapServiceClient?
(Это относится к SitkaSoapService от Microsoft, в справочнике услуг по адресу https://database.windows.net/soap/v1/)
Я использую SitkaSoapServiceClient для доступа к моей базе данных служб данных SQL с помощью SOAP.
Должен ли я использовать оператор using каждый раз, когда использую этот прокси-класс? Или это делает свою собственную обработку соединения безопасным способом внутренне?
Т.е. мне нужно сказать:
using (SitkaSoapServiceClient proxy = GetProxy())
proxy.Update(scope, entity);
... или можно с уверенностью сказать:
GetProxy().Update(scope, entity);
[где GetProxy() возвращает объект SitkaSoapServiceClient.]
2 ответа
Код прокси-класса компилируется, когда заключен в оператор using? Если это так, он реализует IDisposable
и я бы использовал это.
РЕДАКТИРОВАТЬ: вызов Dispose() должен понести небольшие накладные расходы, если он ничего не делает, и если разработчик класса решит позднее выделить неуправляемые ресурсы, вы будете защищены от утечки.
Вы должны всегда использовать using
когда класс реализует IDisposable, потому что автор класса говорит вам, что он содержит некоторые ресурсы, которые должны быть освобождены.