我只是和 Roslyn 一起玩,但不确定如何执行以下操作。
为了简单起见,假设我有一个主机程序,它有这样的方法
public void DisplayMessage(string message)
{
MessageBox.Show(message);
}
然后我可以有一个名为 MyScript.csx 的脚本文件,然后在脚本中的某个地方有类似的东西
void Main()
{
Host.DisplayMessage("I am a script");
}
然后我让主机加载文件并执行它。
如果这种事情做不到,有没有基于c#的脚本系统/引擎可以做到?这些是要求
- 宿主应用程序可以从文件加载脚本。
- 脚本文件是用 c# 编写的,因此可以使用带有语法等的 VS2010 编写
- 脚本文件可以访问宿主的公共方法、属性等