可能是一个简单的学习问题,但我正在尝试使用新的 roslyn 源代码生成器为 .net 框架 4.7.2 自动生成一些源代码(目标是 mvc,但如果它在我的测试控制台中工作我会很高兴应用程序)。
这是我的代码
[Generator]
public class GenerateCommand : ISourceGenerator
{
public const string TestCode = @"
namespace Test
{
public static class Hello
{
public static string World = ""Hi from generated code."";
}
}";
public void Initialize(InitializationContext context) { }
public void Execute(SourceGeneratorContext context)
{
context.AddSource("Hint_Hello_World", SourceText.From(TestCode, Encoding.UTF8));
}
public void Test()
{
var x = Test.Hello.World; // <-- Refuses to build.
}
}
}
包版本是 Microsoft.CodeAnalysis.CSharp v 3.7.0(和相关的 roslyn 东西)
这似乎是我可以做到的尽可能简单,如果我的目标是 .net 核心,它似乎可以工作,只是当我试图将它添加到框架项目时它什么都不做。没有错误,没有输出消息,只是没有运行或生成源。
任何帮助,将不胜感激。