public sealed class ReflectionPermission : System.Security.CodeAccessPermission : IUnrestrictedPermission, IBuiltInPermission { // Public Constructors public ReflectionPermission(PermissionState state); public ReflectionPermission(ReflectionPermissionFlag flag); // Public Instance Properties public ReflectionPermissionFlag Flags{set; get; } // Public Instance Methods public override IPermission Copy( ); // overrides CodeAccessPermission public override void FromXml(System.Security.SecurityElement esd); // overrides CodeAccessPermission public override IPermission Intersect(System.Security.IPermission target); // overrides CodeAccessPermission public override bool IsSubsetOf(System.Security.IPermission target); // overrides CodeAccessPermission public bool IsUnrestricted( ); // implements IUnrestrictedPermission public override SecurityElement ToXml( ); // overrides CodeAccessPermission public override IPermission Union(System.Security.IPermission other); // overrides CodeAccessPermission }
The ReflectionPermission code-access permission class controls the ability for code to access nonvisible type members through .NET's reflection capabilities. This includes the ability of code to access protected and private type members, as well as to create assemblies dynamically in memory. The functionality represented by a ReflectionPermission object is specified at construction using members of the ReflectionPermissionFlag enumeration. To retrieve or modify the access represented by a ReflectionPermission object, use its Flags property.