如何防止 Resharper 大量缩进 lambda?
Posted
技术标签:
【中文标题】如何防止 Resharper 大量缩进 lambda?【英文标题】:How do I keep Resharper from massively indenting lambdas? 【发布时间】:2012-11-30 13:11:34 【问题描述】:我安装了 Resharper,主要是默认设置。目前,我希望我的多行 lambda 表达式看起来像这样:
foobarclass.biz.baz.Event += (s, e) =>
foo.Bar.DoThings.Whatever();
;
但是,Resharper “有帮助”会重新格式化我的代码,如下所示:
foobarclass.biz.baz.Event += (s, e) =>
foo.Bar.DoThings.Whatever();
;
并且在某些情况下,还会分解长语句,因此最终看起来像这样:
foobarclass.biz.baz.Event += (s, e) =>
foo.
Bar.
DoThings.
Whatever();
;
如您所知,这种自动格式化使代码的可读性更少。我该如何解决这种行为?
【问题讨论】:
【参考方案1】:尝试取消选中:
RESHARPER -> OPTIONS -> C# -> 格式化样式 -> 其他 -> 缩进匿名方法体
【讨论】:
这似乎是这和改变大括号布局的结合 虽然我讨厌大多数事情的 GNU 风格,但对于匿名方法,它可以满足我的需求 @g.pickardou 该选项现在简称为“匿名方法体”,位于“对齐多行结构”标题下。 我知道这是一个老话题,但我发现这个是因为我在 resharper 2016.2 上遇到了同样的问题。更改此设置没有任何作用,示例代码在勾选和取消勾选框时甚至没有更改。我必须在 other>other 下启用“使用旧格式引擎”选项,以免 lambdas 大量缩进。 @ErikNilsson:显然这是一个回归:youtrack.jetbrains.com/issue/RSRP-460614以上是关于如何防止 Resharper 大量缩进 lambda?的主要内容,如果未能解决你的问题,请参考以下文章
如何防止 ReSharper 在生成代码时为内置类型添加“@”符号?
如何防止 ReSharper 在我的 MSpec 字段之间插入空行?
如何防止 Resharper Javascript Intellisense 将 'function' 替换为 'Function'?