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