是否可以从C#编译成.Net,可以通过C#脚本语言扩展?

时间:2013-03-13 08:23:10

标签: c# .net scripting

因此需要做三件事:

  • 脚本中的纯IL / C#生成
  • abilety投入C#类和语法结构
  • 简单C#api

一般来说我想要这样的api:

var sctipt = "Script...";
var scriptConstruct =  "{0} \{ {1} \}";
ScriptCompiler.registerConstruct<Action<string, string> >(scriptConstruct);
ScriptCompiler.reginsterType(ClassT);
ScriptCompiler.bindFunction<Action<String> >(MyFunction, "FunctionNameInScript")
var CompiledScript = ScriptCompiler.Compile(sctipt);
CompiledScript.execute();

有没有这样的脚本语言? 我试过Nemerle但是找不到如何以我刚才描述的方式使用它。

3 个答案:

答案 0 :(得分:1)

目前正在开发一个名为Roslyn的新项目,它正是您正在寻找的。它可作为社区技术预览版提供。已经做了很多改进,所以我建议你尝试一下。

http://msdn.microsoft.com/en-us/vstudio/roslyn.aspx

答案 1 :(得分:1)

我好久没看过这个了,但是你的问题会浮现在脑海中Roslyn

  

Roslyn CTP预览了下一代语言对象模型   用于代码生成,分析和重构,以及即将推出的代码   支持VB和C#的脚本和交互使用。

有一些事情在这个问题上展开,herehere

答案 2 :(得分:0)

您是否看过以下链接?

http://reverseblade.blogspot.com/2009/02/dont-wait-for-c-5-use-nemerle.html

这样你可以动态地运行东西