【问题标题】:Does c# support any scripting languagec#是否支持任何脚本语言
【发布时间】:2013-11-07 01:12:34
【问题描述】:

我需要我的超级用户编写一些基本表达式,例如(获取今天,或获取上个月的第一天,或仅返回一个默认的 int 值,如 40),以便稍后执行并获取结果。它将用于为报告参数提供可选默认值的基本脚本。如果不需要任何额外的安装就好了

那么 c-sharp 是否支持任何它可以愉快地执行和评估的脚本语言?

提前致谢,

这是一个 ASP.Net 应用程序和 .Net Framework 4.5

【问题讨论】:

  • 什么类型的脚本?尝试查看 IronPython、IronRuby 或其他使用 DLR 的 Iron* 脚本语言。
  • 你看过scriptcs吗? scriptcs.net
  • @IlyaIvanov 基本脚本,将为报告参数提供可选的默认值。如果它不需要任何额外的安装就好了。
  • 可能类似于csscriptCSScript.Evaluator.Evaluate("DateTime.Today")
  • 您在寻找特定功能吗?谷歌搜索“c# scripting”会返回很多结果。我过去曾成功地将 Razor 模板用于报告。

标签: c# scripting eval


【解决方案1】:

LUA 是一种可以从 C# 中使用的脚本语言,看看LuaInterface

【讨论】:

    【解决方案2】:

    你可以使用 NLua (http://nlua.org/https://www.nuget.org/packages/NLua/)

    超级容易集成,可以在任何平台上工作。

    【讨论】:

      【解决方案3】:

      我最近使用IronPython 为程序提供“脚本”。您可以将 IronPython 运行时嵌入到您的程序中,并让它执行作为字符串传递的脚本。查看here 中的一些示例。

      您还可以执行动态编译的 C# 代码。见here

      【讨论】:

        【解决方案4】:

        简短的回答,是的。 几乎所有可能的脚本语言都有许多不同的可能脚本引擎。

        就个人而言,我也喜欢将 C# 用于脚本。 然后让程序加载脚本文件并在运行时编译。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-10-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多