我刚刚发现了.NET ICodeCompiler(请注意,除了它可以在程序内运行程序之外,我对它一无所知)。如果要围绕它编写一个脚本架构,应该怎么做呢?
理想情况下,我希望用户编写一些从接口派生的代码。这个接口将由我在我的程序中定义(用户不能编辑它)。用户将实现它,CompileEngine将运行它。然后,我的程序将调用他们已经实现的各种方法。这可行吗?
例如,他们将不得不实现这个:
我会编译他们的实现并实例化他们的对象:
理想情况下,我希望用户编写一些从接口派生的代码。这个接口将由我在我的程序中定义(用户不能编辑它)。用户将实现它,CompileEngine将运行它。然后,我的程序将调用他们已经实现的各种方法。这可行吗?
例如,他们将不得不实现这个:
public interface IFoo
{
void DoSomething();
}
我会编译他们的实现并实例化他们的对象:
// Inside my binary
IFoo pFooImpl = CUserFoo;
pFooImpl.DoSomething();