Jes*_*ess 5 c# resharper refactoring
我有一个要移到其他对象的功能。在代码中,选择要移动的功能。我使用ReSharper>重构>移动,但是什么也没有发生。
这是我添加到答案中的新选项。到目前为止,这是最简单的。
我不确定此选项是否将一直有效。
我发现,只有在您具有该对象作为成员的情况下,“ 重构”>“移动”才有效。该成员必须是具体类型,而不是接口。例如,
public class MyController : Controller
{
// ReSharper 8.2 will give the option to move to this object only.
private MyRepository _repo;
// ...
public FunctionToMove()
{
// Do stuff.
}
}
Run Code Online (Sandbox Code Playgroud)
考虑到这一点很有意义,因为ReSharper希望重构为工作代码。您必须具有对该对象的引用,才能调用“移动”方法。即使这样,Resharper在这种情况下仍可能会考虑其他UI决定。(如留言)
我在将private方法移到static类时遇到了麻烦。我将方法从更改private为public static,然后可以选择要将其移动到的静态类。