使用Roslyn更改变量声明

时间:2014-02-25 15:01:59

标签: c# roslyn

我想使用Rolsyn进行变量修改。 假设我们有:

class Program
{
    static void Main(string[] args)
    {
        string p = "ss";
        int k = 1;
    }
}

并且在修改之后应该看起来:

class Program
{
    static void Main(string[] args)
    {
        string p = "ss";
        int k = System.Math.Abs(1);
    }
}

我想为此目的使用SyntaxWalker,但我无法弄清楚我应该如何精确地使用VisitVariableDeclarator。

修改

我在

中有初始化程序
node.Declaration.Variables[0].Initializer

我希望将其切换为

var expressionSyntax =  Syntax.ParseStatement("System.Math.Abs(" + node.Declaration.Variables[0].Initializer.Value + ")");

但我不知道怎么做。我不能简单地将这些传递给ReplaceNode(错误的类型)。

0 个答案:

没有答案