VS 2022 - преобразование в пространство имен файловой области во всех файлах
4 ответа
Добавление правила для использования пространств имен с файловой областью сработало для меня:
- Создайте
.editorconfig
файл в решении - Добавить
csharp_style_namespace_declarations = file_scoped:warning
(документы , код - IDE0161)
После этого в диалоговом окне предварительного просмотра изменений была возможность применить исправление ко всему проекту / решению:
У меня всегда возникают проблемы с поиском файлов, которые должны быть обновлены (в данном случае .editorconfig). Я даже не знаю, должен ли я искать его в проекте, установке Visual Studio или любой другой папке на ПК. Так что мне нравится ответ по ссылке ниже, потому что там написано, где в интерфейсе изменить настройку.
На мой взгляд, лучший ответ здесь:https://www.ilkayilknur.com/how-to-convert-block-scoped-namespacees-to-file-scoped-namespaces
В нем говорится, что вы можете изменить предпочтение стиля кода (и включить отображение параметра для применения этого предпочтения в документе/проекте/решении), перейдя в Инструменты => Параметры => Текстовый редактор => C#=> Стиль кода и затем изменить соответствующий параметр.
Синтаксис EditorConfig
csharp_style_namespace_declarations = file_scoped
dotnet_diagnostic.IDE0161.severity = error
Примечание
Синтаксис
option = rule:severity
рано или поздно выйдет из строя .
Настоятельно рекомендую прочитать эту статью перед началом сборки
.editorconfig
для вашего проекта.
После того, как вы настроили.editorconfig
, вы можете настроить параметр «Очистка кода», чтобы автоматически преобразовывать все файлы для использования пространства имен в файловой области. Перейдите в Инструменты -> Параметры -> Текстовый редактор -> Очистка кода -> Настроить очистку кода. Затем добавьте «Применить настройки пространства имен». Затем перейдите в «Анализ» -> «Очистка кода» (или просто найдите «Очистка кода») и запустите «Очистку кода», чтобы автоматически изменить пространства имен на файловые.