DnsPermission(PermissionState) 생성자

정의

무제한 DNS 액세스를 허용하거나 DNS 액세스를 허용하지 않는 DnsPermission 클래스의 새 인스턴스를 만듭니다.

public:
 DnsPermission(System::Security::Permissions::PermissionState state);
public DnsPermission (System.Security.Permissions.PermissionState state);
new System.Net.DnsPermission : System.Security.Permissions.PermissionState -> System.Net.DnsPermission
Public Sub New (state As PermissionState)

매개 변수

state
PermissionState

PermissionState 값 중 하나입니다.

예외

state는 유효한 PermissionState 값이 아닙니다.

예제

다음 예제는 DnsPermission 클래스에 대한 인스턴스를 만듭니다.

public:
   void useDns()
   {
      // Create a DnsPermission instance.
      DnsPermission^ permission = gcnew DnsPermission( PermissionState::Unrestricted );
      
      // Check for permission.
      permission->Demand();
      // Create a SecurityElement Object* to hold XML encoding of the DnsPermission instance.
      SecurityElement^ securityElementObj = permission->ToXml();
      Console::WriteLine( "Tag, Attributes and Values of 'DnsPermission' instance :" );
      Console::WriteLine( "\n\tTag : {0}", securityElementObj->Tag );
      // Print the attributes and values.
      PrintKeysAndValues( securityElementObj->Attributes );
   }

private:
   void PrintKeysAndValues( Hashtable^ myList )
   {
      // Get the enumerator that can iterate through the hash table.
      IDictionaryEnumerator^ myEnumerator = myList->GetEnumerator();
      Console::WriteLine( "\n\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.
   DnsPermission permission = new DnsPermission(PermissionState.Unrestricted);

   // Check for permission.
   permission.Demand();
   // Create a SecurityElement object to hold XML encoding of the DnsPermission instance.
   SecurityElement securityElementObj = permission.ToXml();
   Console.WriteLine("Tag, Attributes and Values of 'DnsPermission' instance :");
   Console.WriteLine("\n\tTag :" + securityElementObj.Tag);
   // Print the attributes and values.
   PrintKeysAndValues(securityElementObj.Attributes);
}

private void PrintKeysAndValues(Hashtable myList) {
   // Get the enumerator that can iterate through the hash table.
   IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
   Console.WriteLine("\n\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.
    Dim permission As New DnsPermission(PermissionState.Unrestricted)
    
    ' Check for permission.
    permission.Demand()
    ' Create a SecurityElement object to hold XML encoding of the DnsPermission instance.
    Dim securityElementObj As SecurityElement = permission.ToXml()
    Console.WriteLine("Tag, Attributes and Values of 'DnsPermission' instance :")
    Console.WriteLine((ControlChars.Cr + ControlChars.Tab + "Tag :" + securityElementObj.Tag))
    ' Print the attributes and values.
    PrintKeysAndValues(securityElementObj.Attributes)
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.Cr + 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

설명

가 이 UnrestrictedDnsPermissionstate instance 모든 요구를 전달합니다. 다른 값 DnsPermission 이 포함된 경우 state instance 모든 요구에 실패합니다.

적용 대상