private static async Task <Document> RefactorAsync( Document document, string name, MemberAccessExpressionSyntax memberAccess, CancellationToken cancellationToken = default(CancellationToken)) { SyntaxNode oldRoot = await document.GetSyntaxRootAsync(cancellationToken).ConfigureAwait(false); SimpleNameSyntax newNode = memberAccess.Name.WithTriviaFrom(memberAccess); SyntaxNode newRoot = oldRoot.ReplaceNode(memberAccess, newNode); newRoot = ((CompilationUnitSyntax)newRoot).AddUsings(CSharpFactory.UsingStaticDirective(SyntaxFactory.ParseName(name))); return(document.WithSyntaxRoot(newRoot)); }