public sealed class ReflectionPermissionAttribute : CodeAccessSecurityAttribute { // Public Constructors public ReflectionPermissionAttribute(SecurityAction action); // Public Instance Properties public ReflectionPermissionFlag Flags{set; get; } public bool MemberAccess{set; get; } public bool ReflectionEmit{set; get; } public bool TypeInformation{set; get; } // Public Instance Methods public override IPermission CreatePermission( ); // overrides SecurityAttribute }
ReflectionPermissionAttribute provides declarative syntax support for the ReflectionPermission class. To configure the level of reflection functionality access represented by a ReflectionPermissionAttribute, assign values of the ReflectionPermissionFlag enumeration to the Flags property. Alternatively, the MemberAccess, ReflectionEmit, and TypeInformation properties take Boolean values to configure the type of access represented by the ReflectionPermissionAttribute; these properties map to the member values defined in the ReflectionPermissionFlag enumeration. Setting Unrestricted to true creates a ReflectionPermissionAttribute that represents unrestricted access to reflection functionality and is equivalent to the value ReflectionPermissionFlag.AllFlags.