Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.
[Visual Basic] Public Overridable Sub Demand() Implements IPermission.Demand _ Implements IStackWalk.Demand [C#] public virtual void Demand(); [C++] public: virtual void Demand(); [JScript] public function Demand();
|SecurityException||A caller higher in the call stack does not have the permission specified by the current instance.
A caller higher in the call stack has called Deny on the current permission object.
This method is typically used by secure libraries to ensure that callers have permission to access a resource. For example, a file class in a secure class library calls Demand for the necessary FileIOPermission before performing a file operation requested by the caller.
The permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. Demand succeeds only if no SecurityException is raised.
Notes to Inheritors: You cannot override this method.
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, Common Language Infrastructure (CLI) Standard