【问题标题】:Is there an option in ReSharper to not put an object initializer on multiple lines?ReSharper 中是否有一个选项可以不将对象初始化器放在多行上?
【发布时间】:2012-09-14 16:22:34
【问题描述】:

每次我输入一个对象初始化器作为参数时,像这样:

SomeFunc(new { Id = id })

然后键入分号,ReSharper 会按照配置格式化我刚刚键入的内容。 但是,我在 ReSharper 中找不到一个选项来使它不会将我的代码变成这样:

SomeFunc(new {
  Id = id
});

我确实确认它实际上是 ReSharper 进行格式化。

【问题讨论】:

  • 我之前看了好几遍,都没有找到办法。

标签: c# resharper


【解决方案1】:

如果您不想让 ReSharper 格式化您的对象初始化程序(这样您就可以自己决定如何格式化它们),我认为这些设置的组合可以完成这项工作。

Keep existing line breaks : [Checked]

Place simple array, object and collection on single line : [Checked]

Wrap object and collection initializer : 'Simple wrap'

Wrap long lines : [Unchecked]

当然,这些设置可能并不适合每个人的情况,但我相信您可以根据自己的需要进行调整。

【讨论】:

    【解决方案2】:

    您似乎需要在Code Editing -> C# -> Formatting Style -> Line Breaks and Wrapping 部分将Wrap object and collection initializer 选项设置为Chop if long

    【讨论】:

    • 我已经将该设置设置为“Chop if long”,但是,对于每一行行,它仍然具有这种行为。
    猜你喜欢
    • 1970-01-01
    • 2017-07-20
    • 2022-08-14
    • 2010-10-18
    • 1970-01-01
    • 2014-01-08
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多