Результаты поиска по запросу "idisposable"

6 ответов

Как правильно утилизировать экземпляр WebResponse ?,

Обычно кто-то пишет такой код, чтобы загрузить некоторые данные с помощью WebRequest. using(WebResponse resp = request.GetResponse()) // WebRequest request... using(Stream str = resp.GetResponseStream()) ; // do something with the ...

4 ответа

Если ваш класс не предоставляет открытый конструктор (требует, чтобы посторонние использовали фабричные методы), и если вы либо используете vb.net, либо готовы использовать потоковые статические поля, вы можете даже объединить инициализацию и очистку с объявлением (например, " var someField = RegDispos (someDisposType.CreateThing ()); "). Чтобы это было безопасно, конструктор должен быть вызван в блоке try / catch или try / finally, который может вызвать Dispose для созданных подобъектов, если конструирование завершится неудачно. Поскольку инициализаторы полей в C # не имеют доступа к параметрам конструктора (слабость в языке, IMHO), единственный способ реализовать такой шаблон - это заставить фабричный метод создать список и поместить его в потоковую статическую переменную, которая может затем читается статическим методом RegDispos.

я есть иерархия классов, каждый член которой может создаватьIDisposable объекты. Я добавилList<IDisposable> свойство базового класса в этой иерархии, к которому я добавляю любые одноразовые объекты при создании. КореньDispose метод перебирает ...

2 ответа

Как я могу избавиться от System.Xml.XmlWriter в PowerShell

Я пытаюсь избавиться от объекта XmlWriter: try { [System.Xml.XmlWriter] $writer = [System.Xml.XmlWriter]::Create('c:\some.xml') } finally { $writer.Dispose() } Ошибка: Ошибка вызова метода, поскольку [System.Xml.XmlWellFormedWriter] не ...

ТОП публикаций

4 ответа

Должен ли я вызвать Close () или Dispose () для потоковых объектов?

Классы, такие какStream, StreamReader, StreamWriter и т. д. реализуетIDisposable интерфейс. Это означает, что мы можем позвонитьDispose() метод на объектах этих классов. Они также определилиpublic метод называетсяClose(), Теперь это смущает меня, ...

2 ответа

Как избавиться от DbContext (или объекта) в приложении asp.net mvc3, когда Ninject используется в качестве средства разрешения зависимостей

Для этой демонстрации я создал поддельный репозиторий базы данных +, как показано ниже Поддельный Db + репозиторий public interface IDemoRepository { string[] GetUsers(); } public class DemoRepository : IDemoRepository, IDisposable { public ...

8 ответов

Структура и IDisposable

Интересно, почему он не компилируется? public static void Main(string[] args) { using (MyStruct sss = new MyStruct()) { sss.s = "fsdfd";// Cannot modify members of 'sss' because it is a 'using variable' //sss.Set(12); //but it's ok } } public ...

6 ответов

IDisposable реализация - Что должно идти в «если (утилизации)»

Я исправил некоторые проблемы утечки памяти в приложении winforms и заметил некоторые одноразовые объекты, которые явно не удаляются (разработчик не вызвал метод Dispose). Реализация метода Finalize также не помогает, потому что он не входит вif ...

1 ответ

C # Linq-to-Sql - следует ли утилизировать DataContext с помощью IDisposable

У меня есть несколько методов, которые имеют дело с БД, и все они начинаются с вызова FaierDbDataContext db = new FaierDbDataContext();Поскольку объект Linq2Sql DataContext реализует IDisposable, следует ли использовать его с ...

1 ответ

Доступ к закрытому закрытию - отметьте методы как безопасные

Речь идет о предупреждении ReSharper «Доступ к удаленному закрытию», которое обычно появляется, когда объект, который позднее удаляется, используется в лямбда-выражении.Доступ к закрытому закрытию в C ...

4 ответа

Это правильная реализация IDisposable?

Я никогда не могу вспомнить все правила реализации интерфейса IDisposable, поэтому я попытался создать базовый класс, который позаботится обо всем этом и сделает IDisposable простым в реализации. Я просто хотел услышать ваше мнение, если эта ...