【发布时间】:2020-03-03 05:52:00
【问题描述】:
我正在开发一个扩展,它必须创建类,用户只提供类名和属性信息,以及我稍后将扩展的更多内容。
我还想添加必要的命名空间。
我看到很多问题都在解决这个问题。我尝试了使用反射.emit 和 CodeDom 的解决方案,但似乎没有一个可以在我的文件系统中物理创建类。有什么地方可以看或开始吗?
我的意思是物理类,cs文件应该出现在我的文件系统中。我说的是一个具有构造函数和一些属性、函数的泛型类。
【问题讨论】:
-
Reflection API 有助于在运行时将类型注入 Assembly。您似乎正在寻找的是代码生成器。也许你必须为自己选择一个。
-
我怎么写一个?我应该使用 IL 吗?
-
物理课是什么样的?你在谈论代码吗?类库?
-
我的意思是物理类,cs文件应该出现在我的文件系统中。我说的是一个具有构造函数和一些属性、函数的泛型类。
-
了解 T4 模板。如果您使用过 DB first 实体框架 - 请记住实体类是如何生成的。 docs.microsoft.com/en-us/visualstudio/modeling/…
标签: c# system.reflection reflection.emit codedom intermediate-language