WebPermissionAttribute.AcceptPattern Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví vzor regulárního výrazu, který popisuje identifikátor URI přijatý aktuální WebPermissionAttribute.
public:
property System::String ^ AcceptPattern { System::String ^ get(); void set(System::String ^ value); };
public string AcceptPattern { get; set; }
member this.AcceptPattern : string with get, set
Public Property AcceptPattern As String
Hodnota vlastnosti
Řetězec obsahující vzor regulárního výrazu, který popisuje identifikátor URI přijatý aktuálním WebPermissionAttribute. Tento řetězec musí být řídicí podle pravidel pro kódování řetězce konstruktoru Regex .
Výjimky
AcceptPattern není null
při pokusu o nastavení hodnoty. Pokud chcete zadat více než jeden identifikátor URI accept, použijte další příkaz deklarace atributu.
Příklady
Následující příklad ukazuje, jak použít WebPermissionAttribute k zadání povoleného AcceptPatternobjektu .
public:
[method:WebPermission(SecurityAction::Deny,AcceptPattern="http://www\\.contoso\\.com/Private/.*")]
static void CheckAcceptPermission( String^ uriToCheck )
{
WebPermission^ permissionToCheck = gcnew WebPermission;
permissionToCheck->AddPermission( NetworkAccess::Accept, uriToCheck );
permissionToCheck->Demand();
}
static void demoDenySite()
{
// Passes a security check.
CheckAcceptPermission( "http://www.contoso.com/Public/page.htm" );
Console::WriteLine( "Public page has passed Accept permission check" );
try
{
// Throws a SecurityException.
CheckAcceptPermission( "http://www.contoso.com/Private/page.htm" );
Console::WriteLine( "This line will not be printed" );
}
catch ( SecurityException^ e )
{
Console::WriteLine( "Expected exception: {0}", e->Message );
}
}
[WebPermission(SecurityAction.Deny, AcceptPattern=@"http://www\.contoso\.com/Private/.*")]
public static void CheckAcceptPermission(string uriToCheck) {
WebPermission permissionToCheck = new WebPermission();
permissionToCheck.AddPermission(NetworkAccess.Accept, uriToCheck);
permissionToCheck.Demand();
}
public static void demoDenySite() {
//Passes a security check.
CheckAcceptPermission("http://www.contoso.com/Public/page.htm");
Console.WriteLine("Public page has passed Accept permission check");
try {
//Throws a SecurityException.
CheckAcceptPermission("http://www.contoso.com/Private/page.htm");
Console.WriteLine("This line will not be printed");
}
catch (SecurityException e) {
Console.WriteLine("Expected exception: " + e.Message);
}
}
<WebPermission(SecurityAction.Deny, AcceptPattern := "http://www\.contoso\.com/Private/.*")> _
Public Shared Sub CheckAcceptPermission(uriToCheck As String)
Dim re As New Regex("http://www\.contoso\.com/Public/.*")
Dim con As New WebPermission(NetworkAccess.Connect, re)
con.Assert()
Dim permissionToCheck As New WebPermission()
permissionToCheck.AddPermission(NetworkAccess.Accept, uriToCheck)
permissionToCheck.Demand()
End Sub
Public Shared Sub demoDenySite()
'Passes a security check.
CheckAcceptPermission("http://www.contoso.com/Public/page.htm")
Console.WriteLine("Public page has passed Accept permission check")
Try
'Throws a SecurityException.
CheckAcceptPermission("http://www.contoso.com/Private/page.htm")
Console.WriteLine("This line will not be printed")
Catch e As SecurityException
Console.WriteLine(("Expected exception" + e.Message))
End Try
End Sub
Poznámky
Při použití WebPermissionAttribute na vaši třídu tato vlastnost určuje, jaký řetězec regulárního výrazu bude přijat pro použití v rámci vaší třídy. Tato vlastnost je write-once.