编辑源代码并在运行时在 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
希望对解决您的问题有所帮助。
基本上我想在运行时从 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
希望对解决您的问题有所帮助。