2009-08-06 44 views
6

有沒有人知道一個工具或VS加載項,這將允許我帶一個基類和一個派生類,並將它們合併到一個單獨的「平坦」類中?或者,鑑於需要處理解決覆蓋和隱藏/新成員的問題,操作太困難了嗎?合併基礎和派生C#類的工具

背景:我正在研究一個項目,我們有一個基類和一個派生類,它將成爲其他幾個人中的第一個。

後續的分析工作意味着現在不需要其他類,專業化只是對新來到代碼庫的編碼人員感到困惑。我想合併基類和派生類來簡化事物(並簡化nHibernate中的數據庫映射),但兩者都相當大 - 所以我認爲值得檢查一下工具是否可以完成這項工作。

+0

你想達到什麼效果? – 2009-08-06 13:50:21

+1

我想你已經考慮過了嗎?它肯定看起來很奇怪。使用派生類? – sbi 2009-08-06 13:51:27

+0

有點奇怪的事情要做,但是看看這個工具是否在外面會很有趣 – 2009-08-06 13:59:11

回答

6

往往,ReSharper可以幫助你。有一個選項(在菜單下:Refactor)稱爲「pull members up」,您可以在其中選擇要移動到基類的成員。
有一個選項「push member down for the other direction,too。

+0

很酷! - 我知道這些選項存在,但我只是用它們來移動在接口和實現類之間的東西。謝謝! – 2009-08-06 14:22:35

+0

這個工作,但它只是部分自動化。我已經記錄Resharper功能請求https://youtrack.jetbrains.com/issue/RSRP-427649爲一鍵式方式合併基地類與其唯一的派生類。 – 2014-11-12 13:24:51