2016-12-14 56 views
5

ReSharper的2016.2如何修復ReSharper的對象初始化縮進方法參數

當前格式

IEnumerable<Customer> customers = dbCustomers.Select(customer => new Customer 
                { 
                 Name = customer.Name, 
                 Address = customer.Address, 
                 Number = customer.Number 
                }); 

預計格式化

IEnumerable<Customer> customers = dbCustomers.Select(customer => new Customer 
{ 
    Name = customer.Name, 
    Address = customer.Address, 
    Number = customer.Number 
}); 

其中ReSharper的2016.2配置可以解決這個問題?

請注意,初始化器位於參數括號內,而不是變量。

+3

你試過這個:Options - > Code Editing - > C# - > Formatting Style - > Other - > Align Multiline Constructs - > Array,object and collection initializer –

+0

@OscarSiauw:是的,這個選項被禁用。 –

回答

0

它剛開始後更新至2016.3版本沒有R·更改任何設置工作。

0

這對我有用。希望能幫助到你!

轉到Resharper - > Visual Studio菜單欄中的選項。

樹形圖:

代碼編輯 - >C# - >格式樣式 - >牙套佈局

在右側面板:

陣列和對象初始化

  • 展開的選項組合框。
  • 挑選At the next Line (BSD style)(第三選項)。

Formatting style

+0

此選項已啓用。它不會按預期更改格式。問題是,初始化器在方法參數列表中。 –

0

如果還有人需要幫助,試試這個: resharper選項 - >代碼編輯 - > C# - >格式化樣式 - >其他 - >取消選中「數組,對象和集合初始值設定項」。

然後在:resharper選項 - >代碼編輯 - > C# - >格式化樣式 - >大括號佈局 - >「數組和對象初始化程序」=「在下一行(BSD樣式)」。

你也可以這樣做,這使它更好一點: resharper選項 - >代碼編輯 - > C# - >格式化樣式 - >換行符和包裝 - >「換行對象和集合初始值設定項「=」如果長或多行「。