在运行时使用c#like脚本

时间:2011-03-16 21:40:28

标签: c# compiler-construction service

我想知道.net中是否有任何库来编写c#脚本。让我更详细地描述一下你,例如我有一个应用程序。当我运行它时,将打开一个c#编辑器,最终用户将编写一些c#代码,当单击运行时,应该评估此代码并在解释运行时c#代码运行后创建dom。这是我心中的简短描述......

6 个答案:

答案 0 :(得分:4)

我整理了一个名为SimpleDevelop的小应用程序,该应用程序使用CSharpCodeProvider来执行您所描述的内容。我的理解是,这个(CodeDom)已被弃用,并且通常不鼓励;但是,它似乎适用于简单的场景。

答案 1 :(得分:2)

基本上,你想使用类似CSharpCodeProvider的东西。 MVC中的Razor视图引擎实际上使用它来将代码编译成可运行的可执行文件。如果您希望您的用户能够编写代码然后对其进行解释,那么您可以从这里开始。请注意,这是一个非常复杂和时间密集的壮举,以确保正确;另外,动态链接和执行外部代码是一个安全的噩梦。只是安全。

答案 2 :(得分:1)

您是否在寻找测试平台?

我使用LinqPad

它主要是Linq查询的测试平台,但我发现它对C#语句和迷你程序等非常有用。

答案 3 :(得分:1)

查看System.CodeDom命名空间。

本文包含大量有用信息:http://www.developerfusion.com/article/4529/using-net-to-make-your-application-scriptable/2/

答案 4 :(得分:0)

您可以使用Compiler命名空间并在运行时编译代码。请查看here以获取有关如何操作的说明。

答案 5 :(得分:0)

我创建了一个应用程序,它将运行c#like script而不使用visual studio。 它位于https://sourceforge.net/projects/csharpquickcode/

C# Quick Code