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