Вопросы по теме 'using-statement'

Будет ли объект по-прежнему удален, если я вернусь в операторе using?
Обман возвращается в середине блока использования Я думаю, заголовок вопроса довольно очевиден, поэтому, учитывая следующий код, удаляется ли SecurityDisabler, если возвращается true? public bool CreateProxyItem(string name,...
2905 просмотров
schedule 23.04.2022

Когда операторы using в C # наиболее полезны?
Таким образом, оператор using автоматически вызывает метод dispose для объекта, который «используется», при выходе из блока using, верно? Но когда это необходимо / полезно? Например, допустим, у вас есть этот метод: public void...
2191 просмотров
schedule 10.05.2022

C # выходит из блока using () с потоком, все еще работающим на объекте с заданной областью
Что происходит с потоком, если он запускает метод в объекте, который был освобожден путем выхода из блока using? Пример: using (SomeObject obj = new SomeObject ()) { obj.param = 10 ; Thread newThread = new Thread(() => {...
2480 просмотров
schedule 13.08.2022

Плохая практика? Неканоничное использование оператора using в c #
В C # есть оператор using , специально для объектов IDisposable. Предположительно, любой объект, указанный в операторе using , будет содержать какой-то ресурс, который должен быть освобожден детерминированно. Однако мне кажется, что в...
2056 просмотров
schedule 05.03.2023

Как сделать так, чтобы нежелательные пространства имен не отображались по умолчанию поверх новых классов
В Visual Studio 2008 C #, если я создаю новый класс, следующие пространства имен появляются по умолчанию, и я удаляю их каждый раз вручную. Есть ли шаблон настроек / папки, куда я могу пойти и удалить эти нежелательные пространства имен, которые не...
229 просмотров

Одноразовые товары, блоки «Использование» и «Попробуй/поймай»
У меня сегодня ментальный блок, нужна помощь, чтобы проверить, не ошиблась ли моя логика. Традиционно я бы делал файловый ввод/вывод примерно так: FileStream fs = null; // So it's visible in the finally block try { fs = File.Open("Foo.txt",...
2543 просмотров
schedule 26.02.2023

Вопрос стиля / удобочитаемости в отношении оператора C # using
Я хотел бы узнать ваше мнение по поводу стиля кодирования, о котором я сомневаюсь. Я понимаю, что, вероятно, нет однозначного ответа, но я хотел бы узнать, есть ли сильные предпочтения в том или ином направлении. Я просматриваю решение,...
314 просмотров
schedule 07.11.2022

Форматирование / отступ для операторов using (C #)
Когда дело доходит до операторов using в C # (не путать с using директивами , которые импортируют пространства имен), Visual Studio не делает отступ в однострочном коде, который следует за ним, если не используются фигурные скобки. Это типично...
1877 просмотров
schedule 20.08.2022

Вызывается ли IDisposeable, если в операторе использования встречается необработанное исключение?
Если у меня есть следующее, будет ли IDisposeable по-прежнему вызываться для DisposeableObject или объект останется открытым, поскольку возникнет необработанное исключение? using ( DisposeableObject = new Object() ) { throw new...
141 просмотров
schedule 06.03.2023

Где я могу поставить try/catch с оператором using?
Возможный дубликат: try/catch + использование, правильный синтаксис Я хотел бы try/catch следующее: //write to file using (StreamWriter sw = File.AppendText(filePath)) { sw.WriteLine(message); } Помещать ли блоки try / catch...
42860 просмотров
schedule 14.04.2022

Использование прокси-сервера WCF
Этот ответ был опубликован в ответ на этот вопрос . Сейчас это немного выше моего понимания, но предполагается ли использовать «функцию более высокого порядка» в клиентском прокси-классе? Это правильное использование?: public class...
160 просмотров
schedule 18.06.2022

Использование С# с использованием ключевого слова в пользовательском классе
Всем известно, что ключевое слово using используется, когда мы хотим очистить неуправляемые ресурсы. Если класс реализует IDisposable , мы можем использовать ключевое слово using с объектом этого класса. Но если я хочу использовать ключевое...
1766 просмотров
schedule 15.06.2022

Область использования ключевого слова C#
Я понимаю, что каждый раз, когда я создаю экземпляр класса, реализующего IDisposable, я должен использовать ключевое слово using , чтобы убедиться, что он правильно удален. Вот так: using (SecureString s = new SecureString()) { }...
384 просмотров
schedule 03.09.2022

CA2202: не удалять объекты несколько раз
У меня такой класс... public class Class1 { public Class1() { byte[] plainText = new byte[1024]; using (MemoryStream msEncrypt = new MemoryStream()) { using (CryptoStream csEncrypt = new...
1868 просмотров
schedule 05.10.2023

Исключение истекло время ожидания в коде исключительно с использованием операторов using
У меня есть многопоточное приложение, которое общается с SQL-сервером через Linq to Sql. Приложение нормально работает на четырехъядерном компьютере (Intel I-7), когда количество потоков искусственно поддерживается на уровне 8:...
3071 просмотров

Каков стандартный синтаксис соответствия для наследования конструктора шаблона?
GCC 4.8.1 принимает template <typename T> class Subclass : public Baseclass<T> { public: using typename Baseclass<T>::Baseclass; }; а MSVC - нет. С другой стороны, MSVC принимает template <typename T> class...
395 просмотров
schedule 19.12.2022

Доступ к предупреждению о удаленном закрытии в операторе using
Я использую «оператор использования», чтобы убедиться, что StreamWriter очищается должным образом. using (StreamWriter fout = new StreamWriter(tempFile)) { data.ForEach(line => fout?.WriteLine(line)); } Я получаю предупреждение...
1610 просмотров
schedule 02.06.2022

Объявите ресурс вне оператора using
У меня есть вопрос по оператору C# using . Согласно документам, рекомендуется как объявлять, так и инициализировать ресурс (например, объект SqlConnection ) внутри оператора using. У меня вопрос: если я только объявлю объект вне области...
63 просмотров

Использование автоматического импорта не работает Visual Studio 2019
У меня есть следующая выборочная проблема с VS 2019 и IntelliSense. Когда я начинаю вводить имя класса, пространство имен которого еще не импортировано, IntelliSense предлагает его в столбце автозаполнения. Как только я нажимаю tab вместо того,...
1849 просмотров