Если оба метода предоставлены, реализация Dispose
должна вызвать Close
. Рекомендуется использовать оператор using, чтобы гарантировать, что Dispose
и, следовательно, Close
вызывается, даже если есть исключение.
Другими словами, сделайте это:
using (Response response = ...)
{
// ...
}
Не это:
Response response = ...;
// ...
response.Close(); // If there is an exception this might never get called!
Одно из различий между закрытием и удалением объекта заключается в том, что при удалении объекта обычно невозможно использовать объект больше (попытка сделать это может вызвать исключение ObjectDisposedException), но после вызова Close это может быть можно по-прежнему использовать объект.
Обратите внимание, что если вы говорите о ASP.NET, то обычно вы не должны вызывать Close или Dispose для объекта Response.