编辑源代码并在运行时在 c# 中使用它

Edit Source code and use it at runtime in c#

基本上我想在运行时从 Json 字符串中提取 Json 架构(不能使用工具),但找不到执行此操作的库。 另一种方法是首先将 JSON 转换为 Class(找到一个开源代码),然后使用 JSON.NET 创建 Json 架构,如下所示。

var generator = new JSchemaGenerator();
JSchema schema = generator.Generate(typeof(Rootobject));

但是 Rootobject class 在编译时是未知的,所以我遇到了编译时错误。还有其他方法吗?请帮忙

我能想到的最好方法是使用您的代码生成 class 的源代码,使用 CodeDOM 编译它,加载生成的程序集并为它生成架构 object 那么

有关在运行时使用 CodeDOM 构建程序集的信息可在此处的 MSDN 上找到:Generating and Compiling Source Code from a CodeDOM graph(这是您感兴趣的第二个标题)。

有关如何加载程序集的信息可在此处的 MSDN 上找到:How to: Load Assemblies into an Application Domain

希望对解决您的问题有所帮助。