1
有一种方法可以在roslyn的.cs文件中的方法末尾添加特定语句?修改Roslyn的方法体
var code = new StreamReader(@"C:\Users\PersonalUser\Documents\Visual Studio 2015\Projects\SampleToAnalyze\SampleToAnalyze\ClassChild.cs").ReadToEnd();
SyntaxTree tree = CSharpSyntaxTree.ParseText(code);
var root = tree.GetRoot();
var compilation = CSharpCompilation.Create("MyCompilation", new[] { tree },
new[] { MetadataReference.CreateFromFile(typeof(object).Assembly.Location) });
var model = compilation.GetSemanticModel(tree);
MethodDeclarationSyntax myMethod= tree.GetRoot().DescendantNodes()
.OfType<MethodDeclarationSyntax>().Last();
StatementSyntax myStatement= SyntaxFactory.ParseStatement(@"Console.WriteLine();");
我想在方法“myMethod”的末尾插入“myStatement”。我希望你能帮助我。谢谢。
它不起作用。当我打开文件时,没有添加的行是 – blinkettaro
确定它有效。我添加了这行File.WriteAllText(file,newRoot.ToFullString());到你的代码。非常感谢! – blinkettaro