【问题标题】:Using a C Sharp file as a script file [duplicate]使用 C Sharp 文件作为脚本文件 [重复]
【发布时间】:2026-01-11 04:55:01
【问题描述】:

可能重复:
How can I read the properties of a C# class dynamically?

基本上,我希望能够编写一个脚本文件(使用 C# 语法),然后将其读入应用程序,以便应用程序执行文件的内容。

我不希望脚本文件包含命名空间等,但脚本文件将是直截了当的 C#。例如,脚本文件可能如下所示:

if (Balance == 0 && Withdrawal > 0)
{
    // Don't allow this to happen
}

基本上类似于业务规则,但采用脚本格式。

我可以查看任何想法或参考资料吗?

【问题讨论】:

标签: c# scripting


【解决方案1】:

在一个应用程序中,我使用 C# 编译器并动态使用生成的代码成功地实现了脚本。

您可以指定要在编译期间使用的引用并“即时”编译一个或多个文件。您还会收到编译时的警告/错误。

这应该使用 AppDomains 以干净的方式完成,但这里有一些开始。

在这个“游戏”中演示了使用脚本的更复杂的方法,其中安全方面也随着 AppDomain 的使用得到了正确解决:

我唯一苦苦挣扎的方面是:

  • 脚本调试
  • 如果你想保持简单,如何为脚本 sn-ps 找到一个简单的 GUI

【讨论】:

    最近更新 更多