7

我经常发现自己在写一些愚蠢的东西,比如:

String.Format("{1}: {0}", reason, message);

或类似的东西,但有更多的字符串占位符。

ReSharper 中是否有自动重构来更改占位符和参数的顺序?如果我尝试手动更改顺序,我倾向于弄乱映射。

显然,上面的例子是微不足道的。我在现实中所做的往往是写这样的东西:

String.Format("{0}.{2} = {1}.{3} AND {0}.{4} = {1}.{5} AND {6}.{7} = {1}.{8}",
  table1Alias, table2Alias, col1A, col2A, col1B, col2B, table3Alias, col3C, col2C);

并且对自己想,如果我可以将 table3Alias 移到其他别名旁边的前面,那就太好了。

(ReSharper 7.1.3)

4

3 回答 3

4

对于 C# 6+(ReSharper 10+ / 2016+):

  • 将光标放在 string.Format
  • Alt+Enter
  • 选择Use string interpolation
  • 再次按Alt+Enter
  • 选择Convert to string.Format
于 2016-05-20T10:39:46.607 回答
1

只需将光标放在 table3Alias 中,然后按Ctrl+ Alt+ Shift+ 左/右箭头。这会更改函数调用中的参数顺序。

Ctrl当您按+ Shift+时,还有一个删除一个选项R

在此处输入图像描述

还有一个添加格式项目的快捷方式。结合这些,您可以做您想做的事情。您要求的确切功能未实现。

于 2013-09-19T13:43:02.567 回答
1

不,没有这样的功能。

于 2013-09-19T13:43:19.823 回答