为Visual Studio编写自定义重构

Jac*_*esB 5 c# visual-studio-2008

有没有办法为Visual Studio编写自定义重构或代码转换?

一个例子:我有一个包含十亿个实例的代码库:

DbConnection conn = null;
conn = new DbConnection();
conn.Open();
...a number of statements using conn...
conn.Close();
conn = null;
Run Code Online (Sandbox Code Playgroud)

我想将其转换为:

using (DbConnection conn = GetConnection()){
   ...statements...
}
Run Code Online (Sandbox Code Playgroud)

出现上述模式的所有地方.

编辑:以上只是一个例子.关键是我需要进行一些代码转换,这些代码转换过于复杂,无法使用基于文本的搜索替换.我想知道我是否可以挂入内置重构的相同机制来编写我自己的代码转换.

Dmi*_*ruk 2

正如马克所说,这更多的是“替换”而不是重构。但无论如何,ReSharper 是一个选择,如果您决定使用它,可以查看本指南。祝你好运!

上面的链接似乎已损坏,请尝试使用此链接