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

Автоматический формат Visual Studio/С#. Могу ли я управлять новой строкой после атрибутов

Visual studio продолжает делать это:

[DataContract] 
public class MyContract 
{
    [DataMember]
    public bool MyBool { get; set; }
    [DataMember]
    public string MyString { get; set; } 
}

Мне бы хотелось:

[DataContract] 
public class MyContract 
{
    [DataMember] public bool MyBool { get; set; }
    [DataMember] public string MyString { get; set; } 
}

Не имеет большого значения, если "открытый класс MyContract" находится в той же строке, что и [DataContract].

В Visual Studio есть много подробных параметров автоформатирования, но я не могу найти никаких ссылок на новые строки после атрибутов. Я что-то упустил? Или это просто не доступно.

EDIT: по крайней мере, мне нужна опция форматирования "не меняйте то, что я ввела", в отличие от опции "всегда вставлять" или "всегда удалять" новую строку. Это очень раздражает то, что он продолжает форматировать мой код после ввода.

4b9b3361

Ответ 1

То, что я обычно делаю, это нажать Ctrl-Z в тот момент, когда автоформат прыгает туда, где я его не ценю.

I.e., на закрывающейся награде, которая форматирует весь класс или метод. Напечатайте заключительную награду, посмотрите, как она меняет способ вам не нравится, а затем нажмите Ctrl-Z. (Я знаю, что вы искали фактический вариант, я не знаю, существует ли какой-либо).

Ответ 2

Не уверен, что он работает для атрибутов, но посмотрите под ToolsOptionsText EditorC#FormattingWrappingLeave block on single line или Leave statements and member declarations on the same line.

Ответ 3

ReSharper может это сделать. Он имеет опции для:

  • Атрибут типа места в той же строке
  • Атрибут метода размещения в той же строке
  • Поместите атрибут property/indexer/event на той же строке (это тот, который вы хотите)
  • Укажите атрибут поля поля в той же строке

Это стоит несколько долларов, но если вы настолько навязчивы, насколько мне стоит каждый пенни.;)

Я также перенаправляю Ctrl+K, Ctrl+D в код безшовного форматирования ReSharper, чтобы испытать блаженство форматирования.

Ответ 4

Для меня лучше всего было отключить автоматический формат; и вставить. В любом случае я вряд ли когда-либо хочу автоформат. Это позволяет вам набирать атрибуты и перемещать их без лишних помех.

Функции > Текстовый редактоp > С# > Форматирование > Общие

Снимок экрана

Ответ 5

Да, Ctrl+E, D - твой друг. Вы можете оптимизировать форматирование в Text editor options