我编写了一些在运行时 C# 代码中编译成程序集的代码,并将其存储在 asp.net 的内存中。之后就可以执行这样的编译代码。
在运行时编译的代码由用户编写。它始终是从我创建的基类继承的一个类。问题是用户可以使用反射访问此基类中的私有字段和方法。所以我的问题是:有没有办法防止使用反射?
我编写了一些在运行时 C# 代码中编译成程序集的代码,并将其存储在 asp.net 的内存中。之后就可以执行这样的编译代码。
在运行时编译的代码由用户编写。它始终是从我创建的基类继承的一个类。问题是用户可以使用反射访问此基类中的私有字段和方法。所以我的问题是:有没有办法防止使用反射?
框架类库中有ReflectionPermission属性,它通过 System.Reflection API 控制对非公共类型和成员的访问。如果您可以将此属性应用于您生成的程序集,您可以尝试查看它是否有效。