DnsPermission.FromXml(SecurityElement) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
XML エンコーディングから DnsPermission インスタンスを再構築します。
public:
override void FromXml(System::Security::SecurityElement ^ securityElement);
public override void FromXml(System.Security.SecurityElement securityElement);
override this.FromXml : System.Security.SecurityElement -> unit
Public Overrides Sub FromXml (securityElement As SecurityElement)
パラメーター
- securityElement
- SecurityElement
DnsPermission インスタンスの再構築に使用する XML エンコーディング。
例外
securityElement
が null
です。
securityElement
が DnsPermission ではありません。
例
次の例では、 DnsPermission XML エンコードからインスタンスを再構築します。
public void ConstructDnsPermission() {
try
{
// Create a DnsPermission instance.
DnsPermission permission = new DnsPermission(PermissionState.None);
// Create a SecurityElement instance by calling the ToXml method on the
// DnsPermission instance.
// Print its attributes, which hold the XML encoding of the DnsPermission
// instance.
Console.WriteLine("Attributes and Values of 'DnsPermission' instance :");
PrintKeysAndValues(permission.ToXml().Attributes);
// Create a SecurityElement instance.
SecurityElement securityElementObj = new SecurityElement("IPermission");
// Add attributes and values of the SecurityElement instance corresponding to
// the permission instance.
securityElementObj.AddAttribute("version", "1");
securityElementObj.AddAttribute("Unrestricted", "true");
securityElementObj.AddAttribute("class","System.Net.DnsPermission");
// Reconstruct a DnsPermission instance from an XML encoding.
DnsPermission permission1 = new DnsPermission(PermissionState.None);
permission1.FromXml(securityElementObj);
// Print the attributes and values of the constructed DnsPermission object.
Console.WriteLine("After reconstruction Attributes and Values of new DnsPermission instance :");
PrintKeysAndValues(permission1.ToXml().Attributes);
}
catch(NullReferenceException e)
{
Console.WriteLine("NullReferenceException caught!!!");
Console.WriteLine("Source : " + e.Source);
Console.WriteLine("Message : " + e.Message);
}
catch(SecurityException e)
{
Console.WriteLine("SecurityException caught!!!");
Console.WriteLine("Source : " + e.Source);
Console.WriteLine("Message : " + e.Message);
}
catch(ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException caught!!!");
Console.WriteLine("Source : " + e.Source);
Console.WriteLine("Message : " + e.Message);
}
catch(Exception e)
{
Console.WriteLine("Exception caught!!!");
Console.WriteLine("Source : " + e.Source);
Console.WriteLine("Message : " + e.Message);
}
}
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 ConstructDnsPermission()
Try
' Create a DnsPermission instance.
Dim permission As New DnsPermission(PermissionState.None)
' Create a SecurityElement instance by calling the ToXml method on the
' DnsPermission instance and print its attributes,
' which hold the XML encoding of the DnsPermission instance.
Console.WriteLine("Attributes and Values of 'DnsPermission' instance :")
PrintKeysAndValues(permission.ToXml().Attributes)
' Create a SecurityElement instacnce .
Dim securityElementObj As New SecurityElement("IPermission")
' Add attributes and values of the SecurityElement instance corresponding to
' the permission instance.
securityElementObj.AddAttribute("version", "1")
securityElementObj.AddAttribute("Unrestricted", "true")
securityElementObj.AddAttribute("class", "System.Net.DnsPermission")
' Reconstruct a DnsPermission instance from an XML encoding.
Dim permission1 As New DnsPermission(PermissionState.None)
permission1.FromXml(securityElementObj)
' Print the attributes and values of the constructed DnsPermission object.
Console.WriteLine("After reconstruction Attributes and Values of new DnsPermission instance :")
PrintKeysAndValues(permission1.ToXml().Attributes)
Catch e As NullReferenceException
Console.WriteLine("NullReferenceException caught!!!")
Console.WriteLine(("Source : " + e.Source))
Console.WriteLine(("Message : " + e.Message))
Catch e As SecurityException
Console.WriteLine("SecurityException caught!!!")
Console.WriteLine(("Source : " + e.Source))
Console.WriteLine(("Message : " + e.Message))
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException caught!!!")
Console.WriteLine(("Source : " + e.Source))
Console.WriteLine(("Message : " + e.Message))
Catch e As Exception
Console.WriteLine("Exception caught!!!")
Console.WriteLine(("Source : " + e.Source))
Console.WriteLine(("Message : " + e.Message))
End Try
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
注釈
メソッドは FromXml 、 クラスによって DnsPermission 定義された XML エンコードからインスタンスを SecurityElement 再構築します。
メソッドを ToXml 使用して、状態情報を含むインスタンスを DnsPermission XML エンコードします。