【发布时间】:2010-09-05 08:04:15
【问题描述】:
是否可以在运行时更改方法体?
class Person
{
public void DoSth()
{ Console.WriteLine("Hello!"); }
}
我想要一个简单的输入字段(如文本框),我可以在运行时在其中编写方法体源代码。
文本框可能包含如下数据:
for (int i = 0; i < 5; i++)
Console.WriteLine(i);
应该在什么时候执行
new Person().DoSth()
被调用。
这在 C# 中是否(或如何)可能(使用反射)?
提前感谢您的帮助。
编辑:
如果以上都做不到,是否可以在运行时创建一个新方法并调用它?
【问题讨论】:
-
这不是反射,而是代码生成。这也不是一个好主意。
标签: c# code-generation