【问题标题】:Executing C# or VB.NET code at Runtime在运行时执行 C# 或 VB.NET 代码
【发布时间】:2011-08-02 20:35:20
【问题描述】:

最近在 Codility.com 上花了一些时间,这让我想起了;他们如何执行您创建的代码(特别是与 C# 和 VB.NET 相关的)?

我基本上想知道的是,我将如何在表单上的文本框中键入一些代码,然后运行该代码?如果没有 3rd 方工具,这可能吗?

另外,您将如何防止与此类程序的基于 Web 的实现有关的安全违规行为?

【问题讨论】:

标签: c# vb.net security dynamic code-generation


【解决方案1】:

看看http://msdn.microsoft.com/en-us/library/system.codedom.compiler.aspx 在网络应用程序中执行这样的代码确实是一个安全问题。 .Net 提供了一组功能来帮助您解决该问题,例如可以在不同的应用程序域中以不同的用户身份运行您编译的代码。

【讨论】:

    【解决方案2】:

    使用 CSharpCodeProvider 类,您可以在运行时编译代码(作为字符串)。

    【讨论】:

      【解决方案3】:

      您可以在运行时在 VB.Net 和 C# 中编译代码。看看代码来做到这一点here

      【讨论】:

        猜你喜欢
        • 2016-07-12
        • 2023-03-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多