2010-04-12 94 views
9

我正在嘗試重命名一個名稱空間。出於某種原因,ReSharper不給我這樣做的選擇。我右鍵點擊它並選擇Refactor,但除「Convert」之外的所有內容都變灰。我嘗試按CTRL R + R組合鍵,它說該命令不可用。我究竟做錯了什麼?ReSharper:重命名命名空間不可用?

這裏是文檔暗示什麼,我試圖做應該工作:

http://www.jetbrains.com/resharper/documentation/help20/Refactoring/renaming.html#renameNamespace

我使用Visual Studio 2008中有R#4.5

+0

遊標是否位於命名空間標識符? – 2010-06-02 10:18:34

+0

我有同樣的問題。也許是因爲我對TFS感興趣?然而,所有其他的重構似乎工作... – 2011-02-21 07:44:14

+0

你能評論我的答案? – wal 2011-02-24 12:46:51

回答

0

這是一個老問題,但我只是有這個,也許知道一個解決方法。 由於有人昨天評論時機不可能更完美。 反正, 我有同樣的問題,終於可以在我的命名空間重命名重構。

  • 我在我的項目中選擇了其中一個類,並移動到另一個名稱空間重構。
  • 然後,我能夠去另一個班,並重命名命名空間重構。

也許在Resharper中的一個錯誤,如果名稱空間在整個類中是一致的,那麼它被禁用?不太可能,因爲這是報告早在4.5 ...

3

我以前遇到過,答案是非常微妙的。不要選擇(例如通過雙擊)整個方法名稱(或者重命名名稱空間的名稱空間)。相反,請確保方法名稱已取消選中,並將插入標記放在方法名稱上。 如

enter image description here

enter image description here

當您選擇轉換菜單中的項目現在應該可用於方法,以及「重命名」將變得可用,如果你有插入一個命名空間。 在我看來這應該改變,這並不明顯。

+0

不幫我,也當我按Ctrl + R,Ctrl + R它選擇整個屬性名稱,這正是你所說的我不應該做的... – MrFox 2013-07-19 08:40:38

+0

其順序'Ctrl + R,R'。我正在使用R#8.0,它現在可以工作,如果選擇或不。 ru使用什麼resharper版本? – wal 2013-07-19 13:18:06

2

顯然,現在要做到這一點的方法是通過ReSharper => Refactor => Adjust Namespaces菜單或打開類視圖,右鍵單擊要重命名的命名空間,然後再次選擇Refactor => Adjust Namespaces

參見:Fastest way to update namespaces with ReSharper?

2

對於它的價值,我只是有這個問題。關閉Visual Studio並重新打開它解決了我的問題。 HTH。