限制在MS脚本引擎中使用名称空间

.NET Framework具有很强的function,可以支持在运行时编译代码并运行代码,以实现某些脚本function。 CodeProject上已经有了一些脚本引擎,而且微软也有自己的库。

我正在开发一个Web自动化软件,我想在应用程序中包含Microsoft脚本引擎。

问题是脚本引擎允许在引用的程序集中使用所有名称空间,并且我想将使用限制在选定的几个名称空间中。

using System; // allowed. using System.Linq; // allowed. using System.Reflection; // restrict. 

如何在脚本中限制名称空间的使用。

通过名称来限制名称空间并没有多大的作用,因为扩展名可以包含你自己的程序集中不喜欢的类的一个副本,只是重命名而已。

这听起来像你真正想要的是一个安全边界。 将扩展放入不可信的AppDomain中。