using System.Text; using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.Text; namespace MySourceGenerator { [Generator] public class MySourceGenerator : ISourceGenerator { public void Execute(GeneratorExecutionContext context) { var sb = new StringBuilder(); sb.AppendLine("using System;"); sb.AppendLine("namespace Generated;"); sb.AppendLine("public static class HelloWorld {"); sb.AppendLine(" public static void SayHello() {"); sb.AppendLine(" Console.WriteLine(\"Hello World!!!\");"); sb.AppendLine(" }"); sb.AppendLine("}"); context.AddSource("HelleWorld.generated", SourceText.From(sb.ToString(), Encoding.UTF8)); } public void Initialize(GeneratorInitializationContext context) { } } }