Подтвердить что ты не робот

Как сообщить ReSharper о сортировке сообщений с системными пространствами имен НЕ вверху?

Visual Studio имеет возможность размещать системные директивы вверху при их сортировке.

enter image description here

Если этот параметр не отмечен, сортировка с помощью операторов, щелкнув правой кнопкой мыши на них и используя функцию "Упорядочить использование", помещает пространства имен System в алфавитном порядке вдоль всех других имён импорта.

Однако ReSharper, похоже, не соблюдает эту настройку и не имеет ничего похожего на собственной странице параметров импорта имён. Он всегда ведет себя так, как будто вы хотите, чтобы пространство имен System было наверху. Это особенно раздражает, когда у вас уже есть что-то внизу, и вы позволяете ReSharper предлагать пространство имен для импорта, а затем вы заканчиваете с некоторыми на обоих концах списка.

Есть ли способ исправить это? Или это просто ошибка/надзор в ReSharper?

4b9b3361

Ответ 1

Я тестировал это снова в ReSharper 8, чтобы проверить, исправлено ли это, и я заметил что-то интересное:

  • Если мои существующие пространства имен уже имеют элементы System, то ReSharper вставляет новые пространства имен под ними.

  • Если мои существующие пространства имен имеют хотя бы один элемент перед элементами System, то ReSharper вставляет новые пространства имен в алфавитном порядке.

  • Поведение ReSharper одинаково независимо от настройки Visual Studio. Он учитывает существующие пространства имен, а не настройки Visual Studio.

Итак, если у меня есть следующее:

using A;
using System;
using Z;

Тогда, если я использую класс из пространства имен B и alt-enter, чтобы позволить ReSharper добавлять пространство имен, оно будет выглядеть как:

using A;
using B;
using System;
using Z;

НО, если у меня есть это:

using System;
using Z;

И я делаю то же самое, тогда я получу:

using System;
using B;
using Z;

И не имеет значения, что такое настройка VS.

Я предполагаю, что это то, что происходило и в ReSharper 7, и я просто не заметил.

Ответ 2

Я использую ReSharper 7 и, по крайней мере, для меня ReSharper берет параметр "Выбор директивы системы" из параметров Visual Studio.

Иногда, когда настройки VS и ReSharper запутаны, они помогают reset настройкам Visual Studio в настройках инструмента → Импорт и экспорт → Reset.