ZoneIdentityPermission.IsSubsetOf-Methode
Bestimmt, ob die aktuelle Berechtigung eine Teilmenge der angegebenen Berechtigung ist.
Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Overrides Function IsSubsetOf ( _
target As IPermission _
) As Boolean
'Usage
Dim instance As ZoneIdentityPermission
Dim target As IPermission
Dim returnValue As Boolean
returnValue = instance.IsSubsetOf(target)
public override bool IsSubsetOf (
IPermission target
)
public:
virtual bool IsSubsetOf (
IPermission^ target
) override
public boolean IsSubsetOf (
IPermission target
)
public override function IsSubsetOf (
target : IPermission
) : boolean
Parameter
- target
Eine Berechtigung, für die geprüft werden soll, ob sie eine Teilmenge einer anderen Berechtigung ist. Diese Berechtigung muss von demselben Typ wie die aktuelle Berechtigung sein.
Rückgabewert
true, wenn die aktuelle Berechtigung eine Teilmenge der angegebenen Berechtigung darstellt, andernfalls false.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Der target-Parameter ist nicht NULL (Nothing in Visual Basic), diese Berechtigung stellt nicht die NoZone-Sicherheitszone dar, und die angegebene und die aktuelle Brechtigung sind nicht identisch. |
Hinweise
Die aktuelle Berechtigung stellt eine Teilmenge der angegeben Berechtigung dar, wenn die zwei Berechtigungen identisch sind oder wenn die aktuelle Berechtigung die NoZone-Sicherheitszone darstellt.
Beispiel
' IsSubsetOf determines whether the current permission is a subset of the specified permission.
Private Function IsSubsetOfDemo() As Boolean
Dim returnValue As Boolean = True
Dim zone1, zone2 As SecurityZone
Dim zoneIdPerm1, zoneIdPerm2 As ZoneIdentityPermission
Dim zoneGen1 As New zoneGenerator()
Dim zoneGen2 As New zoneGenerator()
zoneGen1.ResetIndex()
While zoneGen1.CreateZone(zone1)
zoneIdPerm1 = New ZoneIdentityPermission(zone1)
zoneGen2.ResetIndex()
Console.WriteLine("********************************************************" & ControlChars.Cr)
While zoneGen2.CreateZone(zone2)
zoneIdPerm2 = New ZoneIdentityPermission(zone2)
Try
If zoneIdPerm1.IsSubsetOf(zoneIdPerm2) Then
Console.WriteLine((zoneIdPerm1.SecurityZone.ToString() & _
" is a subset of " & zoneIdPerm2.SecurityZone.ToString()))
Else
Console.WriteLine((zoneIdPerm1.SecurityZone.ToString() & _
" is not a subset of " & zoneIdPerm2.SecurityZone.ToString()))
End If
Catch e As Exception
Console.WriteLine(("An exception was thrown for subset :" & _
zoneIdPerm1.ToString() & ControlChars.Cr & zoneIdPerm2.ToString() & _
ControlChars.Cr & e.ToString()))
returnValue = False
End Try
ContinueWhile2:
End While
ContinueWhile1:
End While
Return returnValue
End Function 'IsSubsetOfDemo
// IsSubsetOf determines whether the current permission is a subset of the specified permission.
private bool IsSubsetOfDemo()
{
bool returnValue = true;
SecurityZone zone1, zone2;
ZoneIdentityPermission zoneIdPerm1, zoneIdPerm2;
ZoneGenerator zoneGen1 = new ZoneGenerator();
ZoneGenerator zoneGen2 = new ZoneGenerator();
zoneGen1.ResetIndex();
while (zoneGen1.CreateZone(out zone1))
{
zoneIdPerm1 = new ZoneIdentityPermission( zone1);
zoneGen2.ResetIndex();
Console.WriteLine("********************************************************\n");
while (zoneGen2.CreateZone(out zone2))
{
zoneIdPerm2 = new ZoneIdentityPermission( zone2);
try
{
if (zoneIdPerm1.IsSubsetOf(zoneIdPerm2))
{
Console.WriteLine(zoneIdPerm1.SecurityZone + " is a subset of " +
zoneIdPerm2.SecurityZone);
}
else
{
Console.WriteLine(zoneIdPerm1.SecurityZone + " is not a subset of " +
zoneIdPerm2.SecurityZone);
}
}
catch (Exception e)
{
Console.WriteLine("An exception was thrown for subset :" + zoneIdPerm1 + "\n" +
zoneIdPerm2 + "\n" + e);
returnValue = false;
}
}
}
return returnValue;
}
// IsSubsetOf determines whether the current permission is a subset of the specified permission.
bool IsSubsetOfDemo()
{
bool returnValue = true;
SecurityZone zone1;
SecurityZone zone2;
ZoneIdentityPermission^ zoneIdPerm1;
ZoneIdentityPermission^ zoneIdPerm2;
ZoneGenerator^ zoneGen1 = gcnew ZoneGenerator;
ZoneGenerator^ zoneGen2 = gcnew ZoneGenerator;
zoneGen1->ResetIndex();
while ( zoneGen1->CreateZone( &zone1 ) )
{
zoneIdPerm1 = gcnew ZoneIdentityPermission( zone1 );
zoneGen2->ResetIndex();
Console::WriteLine( "********************************************************\n" );
while ( zoneGen2->CreateZone( &zone2 ) )
{
zoneIdPerm2 = gcnew ZoneIdentityPermission( zone2 );
try
{
if ( zoneIdPerm1->IsSubsetOf( zoneIdPerm2 ) )
{
Console::WriteLine( "{0} is a subset of {1}", zoneIdPerm1->SecurityZone, zoneIdPerm2->SecurityZone );
}
else
{
Console::WriteLine( "{0} is not a subset of {1}", zoneIdPerm1->SecurityZone, zoneIdPerm2->SecurityZone );
}
}
catch ( Exception^ e )
{
Console::WriteLine( "An exception was thrown for subset : {0}\n{1}\n{2}", zoneIdPerm1, zoneIdPerm2, e );
returnValue = false;
}
}
}
return returnValue;
}
// IsSubsetOf determines whether the current permission
// is a subset of the specified permission.
private boolean IsSubsetOfDemo()
{
boolean returnValue = true;
SecurityZone zone1[] = new SecurityZone[1];
SecurityZone zone2[] = new SecurityZone[1];
ZoneIdentityPermission zoneIdPerm1[] = new ZoneIdentityPermission[1];
ZoneIdentityPermission zoneIdPerm2[] = new ZoneIdentityPermission[1];
ZoneGenerator zoneGen1 = new ZoneGenerator();
ZoneGenerator zoneGen2 = new ZoneGenerator();
zoneGen1.ResetIndex();
while (zoneGen1.CreateZone(zoneIdPerm1, zone1)) {
if (zoneIdPerm1[0] == null) {
continue;
}
zoneGen2.ResetIndex();
Console.WriteLine("****************************"
+ "****************************\n");
while (zoneGen2.CreateZone(zoneIdPerm2, zone2)) {
if (zoneIdPerm2[0] == null) {
continue;
}
try {
if (zoneIdPerm1[0].IsSubsetOf(zoneIdPerm2[0])) {
Console.WriteLine((zoneIdPerm1[0].get_SecurityZone()
+ " is a subset of "
+ zoneIdPerm2[0].get_SecurityZone()));
}
else {
Console.WriteLine((zoneIdPerm1[0].get_SecurityZone()
+ " is not a subset of " +
zoneIdPerm2[0].get_SecurityZone()));
}
}
catch (System.Exception e) {
Console.WriteLine(("An exception was thrown for subset :"
+ zoneIdPerm1[0] + "\n" + zoneIdPerm2[0] + "\n" + e));
returnValue = false;
}
}
}
return returnValue;
} //IsSubsetOfDemo
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
ZoneIdentityPermission-Klasse
ZoneIdentityPermission-Member
System.Security.Permissions-Namespace