WebPermission::AddPermission Method (NetworkAccess, Regex^)


Adds the specified URI with the specified access rights to the current WebPermission.

Namespace:   System.Net
Assembly:  System (in System.dll)

void AddPermission(
	NetworkAccess access,
	Regex^ uriRegex


Type: System.Net::NetworkAccess

A NetworkAccess that specifies the access rights that are granted to the URI.

Type: System.Text.RegularExpressions::Regex^

A regular expression that describes the set of URIs to which access rights are granted.

Exception Condition

The uriRegex parameter is null.

If you have specified None as the PermissionState, use AddPermission to allow the use of uriRegex in the target class. Specify Accept as the access parameter to add the URI specified by the uriRegex parameter to the list of URI accept strings, or specify Connect as the access parameter to add the URI to the list of URI connect strings.


Calling AddPermission on an UnrestrictedWebPermission instance will have no effect as permission is granted to all URIs.


It is recommended that you create uriRegex using the RegexOptions::IgnoreCase, RegexOptions::Compiled, and RegexOptions::Singleline flags.


A candidate URI string is checked against the list of relevant regular expressions (AcceptList or ConnectList) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a Uri and checked against the appropriate list.

The following example uses AddPermission to give access rights for the specified URI.

// Create a WebPermission.
WebPermission^ myWebPermission1 = gcnew WebPermission;

// Allow Connect access to the specified URLs.
myWebPermission1->AddPermission( NetworkAccess::Connect, gcnew Regex( "http://www\\.contoso\\.com/.*",
   (RegexOptions)(RegexOptions::Compiled | RegexOptions::IgnoreCase | RegexOptions::Singleline) ) );


.NET Framework
Available since 1.1
Return to top