public static Task <Document> RefactorAsync(Document document, CompilationUnitSyntax compilationUnitSyntax, CancellationToken cancellationToken = default) { var attributeList = GetGenerator(document) .InternalVisibleToDynamicProxyAttributeList() .Cast <AttributeListSyntax>(); var assemblyAttributes = attributeList.Attributes.Select(attr => attr.WithTarget(AttributeTarget(Token(SyntaxKind.AssemblyKeyword)))); attributeList = attributeList.WithAttributes(SeparatedList(assemblyAttributes)); var updatedCompilationUnitSyntax = compilationUnitSyntax.AddAttributes(AttributesStatement(SingletonList(attributeList))); return(document.ReplaceNodeAsync(compilationUnitSyntax, updatedCompilationUnitSyntax, cancellationToken)); }
public static Task <Document> RefactorAsync(Document document, CompilationUnitSyntax compilationUnitSyntax, CancellationToken cancellationToken = default) { var addAttributeLists = compilationUnitSyntax.AddAttributes( AttributesStatement(SingletonList( AttributeList(SingletonSeparatedList(Attribute( AttributeTarget(Token(SyntaxKind.AssemblyKeyword)), QualifiedName( QualifiedName( QualifiedName( IdentifierName("System"), IdentifierName("Runtime")), IdentifierName("CompilerServices")), IdentifierName("InternalsVisibleTo")), ArgumentList(SingletonSeparatedList <ArgumentSyntax>(SimpleArgument( LiteralExpression( SyntaxKind.StringLiteralExpression, Literal("DynamicProxyGenAssembly2"))))))))))); return(document.ReplaceNodeAsync(compilationUnitSyntax, addAttributeLists, CancellationToken.None)); }