DnsPermission.IsSubsetOf(IPermission) Metoda
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í.
Určuje, zda aktuální instance oprávnění je podmnožinou zadané instance oprávnění.
public:
override bool IsSubsetOf(System::Security::IPermission ^ target);
public override bool IsSubsetOf (System.Security.IPermission target);
override this.IsSubsetOf : System.Security.IPermission -> bool
Public Overrides Function IsSubsetOf (target As IPermission) As Boolean
Parametry
- target
- IPermission
Druhá DnsPermission instance, která se má testovat pro relaci podmnožinu.
Návraty
false
pokud je aktuální instance neomezená a target
je buď null
nebo neomezená, v opačném případě true
.
Výjimky
target
není ani .DnsPermissionnull
Příklady
Následující příklad používá metodu IsSubsetOf k určení, zda aktuální instance oprávnění je podmnožinou zadané instance oprávnění.
public:
void useDns()
{
// Create a DnsPermission instance.
permission = gcnew DnsPermission( PermissionState::Unrestricted );
DnsPermission^ dnsPermission1 = gcnew DnsPermission( PermissionState::None );
// Check for permission.
permission->Demand();
dnsPermission1->Demand();
// Print the attributes and values.
Console::WriteLine( "Attributes and Values of 'DnsPermission' instance :" );
PrintKeysAndValues( permission->ToXml()->Attributes );
Console::WriteLine( "Attributes and Values of specified 'DnsPermission' instance :" );
PrintKeysAndValues( dnsPermission1->ToXml()->Attributes );
Subset( dnsPermission1 );
}
private:
void Subset( DnsPermission^ Permission1 )
{
if ( permission->IsSubsetOf( Permission1 ) )
{
Console::WriteLine( "Current 'DnsPermission' instance is a subset of specified 'DnsPermission' instance." );
}
else
{
Console::WriteLine( "Current 'DnsPermission' instance is not a subset of specified 'DnsPermission' instance." );
}
}
void PrintKeysAndValues( Hashtable^ myList )
{
// Get the enumerator that can iterate through the hash table.
IDictionaryEnumerator^ myEnumerator = myList->GetEnumerator();
Console::WriteLine( "\t-KEY-\t-VALUE-" );
while ( myEnumerator->MoveNext() )
{
Console::WriteLine( "\t {0}:\t {1}", myEnumerator->Key, myEnumerator->Value );
}
Console::WriteLine();
}
public void useDns() {
// Create a DnsPermission instance.
permission = new DnsPermission(PermissionState.Unrestricted);
DnsPermission dnsPermission1 = new DnsPermission(PermissionState.None);
// Check for permission.
permission.Demand();
dnsPermission1.Demand();
// Print the attributes and values.
Console.WriteLine("Attributes and Values of 'DnsPermission' instance :");
PrintKeysAndValues(permission.ToXml().Attributes);
Console.WriteLine("Attributes and Values of specified 'DnsPermission' instance :");
PrintKeysAndValues(dnsPermission1.ToXml().Attributes);
Subset(dnsPermission1);
}
private void Subset(DnsPermission Permission1)
{
if(permission.IsSubsetOf(Permission1))
Console.WriteLine("Current 'DnsPermission' instance is a subset of specified 'DnsPermission' instance.");
else
Console.WriteLine("Current 'DnsPermission' instance is not a subset of specified 'DnsPermission' instance.");
}
private void PrintKeysAndValues(Hashtable myList) {
// Get the enumerator that can iterate through the hash table.
IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
Console.WriteLine("\t-KEY-\t-VALUE-");
while (myEnumerator.MoveNext())
Console.WriteLine("\t{0}:\t{1}", myEnumerator.Key, myEnumerator.Value);
Console.WriteLine();
}
Public Sub useDns()
' Create a DnsPermission instance.
permission = New DnsPermission(PermissionState.Unrestricted)
Dim dnsPermission1 As New DnsPermission(PermissionState.None)
' Check for permission.
permission.Demand()
dnsPermission1.Demand()
' Print the attributes and values.
Console.WriteLine("Attributes and Values of 'DnsPermission' instance :")
PrintKeysAndValues(permission.ToXml().Attributes)
Console.WriteLine("Attributes and Values of specified 'DnsPermission' instance :")
PrintKeysAndValues(dnsPermission1.ToXml().Attributes)
Subset(dnsPermission1)
End Sub
Private Sub Subset(Permission1 As DnsPermission)
If permission.IsSubsetOf(Permission1) Then
Console.WriteLine("Current 'DnsPermission' instance is a subset of specified 'DnsPermission' instance.")
Else
Console.WriteLine("Current 'DnsPermission' instance is not a subset of specified 'DnsPermission' instance.")
End If
End Sub
Private Sub PrintKeysAndValues(myList As Hashtable)
' Get the enumerator that can iterate through the hash table.
Dim myEnumerator As IDictionaryEnumerator = myList.GetEnumerator()
Console.WriteLine(ControlChars.Tab + "-KEY-" + ControlChars.Tab + "-VALUE-")
While myEnumerator.MoveNext()
Console.WriteLine(ControlChars.Tab + "{0}:" + ControlChars.Tab + "{1}", myEnumerator.Key, myEnumerator.Value)
End While
Console.WriteLine()
End Sub
Poznámky
Aktuální DnsPermission instance je podmnožinou zadané DnsPermission instance, pokud aktuální DnsPermission instance určuje sadu operací, které jsou zcela obsaženy v zadané DnsPermission instanci.
IsSubsetOf Pokud metoda vrátí true
, aktuální DnsPermission instance neumožňuje další přístup k serverům DNS než zadaná DnsPermission instance.