メソッドがを使用しないかどうかを識別し、それを追加するコード修正を提案する Roslyn コード アナライザーを作成しています。asyncCancellationToken
//Before Code Fix:
public async Task Example(){}
//After Code Fix
public async Task Example(CancellationToken token){}
DiagnosticAnalyzerを調べて Diagnostic を正しく報告するように を接続しましたが、 aの内部に amethodDeclaration.ParameterList.Parametersを追加するための Roslyn API が見つかりません。ParamaterParameterListCodeFixProvider
これは私がこれまでに得たものです:
private async Task<Document> HaveMethodTakeACancellationTokenParameter(
Document document, SyntaxNode syntaxNode, CancellationToken cancellationToken)
{
var method = syntaxNode as MethodDeclarationSyntax;
// what goes here?
// what I want to do is:
// method.ParameterList.Parameters.Add(
new ParameterSyntax(typeof(CancellationToken));
//somehow return the Document from method
}
メソッド宣言を正しく更新し、更新されたを返すにはどうすればよいDocumentですか?