2014-12-07 65 views
0

C#,Visual Studio 2013,ReSharper 8.2。如何將參數添加到方法並覆蓋子類

我有一堂課。這個類由其他類繼承,全部在同一個解決方案中。該類有一個受保護的構造函數,它具有三個參數。每個子類都引入一個具有相同參數的公共構造函數,鏈接到父類中的構造函數。

我想添加第四個參數給這個構造函數。我希望將這個新參數添加到每個子類中的構造函數中。我不想手動將它添加到子類,因爲有很多。

如何使用Visual Studio或ReSharper自動執行此操作?通常R#會讓這個顯而易見,但這次不會。

+1

你是如何重寫構造函數的? – 2014-12-07 19:06:54

+1

@ AliSepehri.Kh謝謝,重新編寫。 – cja 2014-12-07 19:23:13

回答

6

我剛剛升級到ReSharper的9,所以我不能在以前的版本檢查,但在這裏就是我如何設法做到這一點在最新的版本:

  • 首先,我手動添加的參數基礎構造函數。
  • 然後我打開Alt+Enter菜單和選擇應用變化簽名重構...

Apply change signature refactoring...

  • 在該對話框中,我選擇解決與調用樹

Resolve with call tree

  • 現在重構 - 更改簽名對話框打開與需要修復所有派生類:

Refactoring - Change signature

  • 我只需要點擊第二個選項(創建參數.. 。在構造函數中...)修復所有發生:

Create parameter ... in constructor ...

+1

謝謝輝煌的解釋 – cja 2014-12-07 19:48:12

0

我不確定,但我認爲你可以使用Change Signature Resharper的重構。欲瞭解更多信息,請參閱This