SecurityPermission.FromXml-Methode
Rekonstruiert aus einer XML-Codierung eine Berechtigung mit einem angegebenen Zustand.
Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Overrides Sub FromXml ( _
esd As SecurityElement _
)
'Usage
Dim instance As SecurityPermission
Dim esd As SecurityElement
instance.FromXml(esd)
public override void FromXml (
SecurityElement esd
)
public:
virtual void FromXml (
SecurityElement^ esd
) override
public void FromXml (
SecurityElement esd
)
public override function FromXml (
esd : SecurityElement
)
Parameter
- esd
Die XML-Codierung, die zum Wiederherstellen der Berechtigung verwendet werden soll.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Der esd-Parameter ist NULL (Nothing in Visual Basic). |
|
Der esd-Parameter ist kein gültiges Berechtigungselement. – oder – Die Versionsnummer des esd-Parameters wird nicht unterstützt. |
Beispiel
Im folgenden Codebeispiel soll das Verhalten der FromXml-Methode veranschaulicht werden, auf ihre Verwendung wird jedoch nicht eingegangen. Im Allgemeinen werden die Methoden von Berechtigungsklassen durch die Sicherheitsinfrastruktur verwendet und sind nicht für die Verwendung in Anwendungen bestimmt. Im folgenden Codebeispiel wird jedoch veranschaulicht, wie sich die Methode verhält, wenn sie vom Code aus ausgeführt wird. Den vollständigen Beispielcode finden Sie in der SecurityPermission-Klasse.
Private Function ToFromXmlDemo() As Boolean
Dim returnValue As Boolean = True
Dim Security1 As SecurityPermissionFlag
Dim SecurityPerm1, SecurityPerm2 As SecurityPermission
Dim SecurityGen1 As New SecurityGenerator()
Dim SecurityGen2 As New SecurityGenerator()
SecurityGen1.ResetIndex()
While SecurityGen1.GetSecurityFlag(Security1)
SecurityPerm1 = New SecurityPermission(Security1)
Console.WriteLine("********************************************************" & ControlChars.Lf)
SecurityGen2.ResetIndex()
Try
SecurityPerm2 = New SecurityPermission(PermissionState.None)
SecurityPerm2.FromXml(SecurityPerm1.ToXml())
Console.WriteLine(("Result of ToFromXml = " & SecurityPerm2.ToString()))
Catch e As Exception
Console.WriteLine(("ToFromXml failed :" & SecurityPerm1.ToString() & e.ToString()))
GoTo ContinueWhile1
End Try
ContinueWhile1:
End While
Return returnValue
End Function 'ToFromXmlDemo
private bool ToFromXmlDemo()
{
bool returnValue = true;
SecurityPermissionFlag security1;
SecurityPermission securityPerm1,securityPerm2;
SecurityGenerator SecurityGen1 = new SecurityGenerator();
SecurityGenerator SecurityGen2 = new SecurityGenerator();
SecurityGen1.ResetIndex();
while(SecurityGen1.GetSecurityFlag( out security1 ))
{
securityPerm1 = new SecurityPermission(security1);
Console.WriteLine("********************************************************\n");
SecurityGen2.ResetIndex();
try
{
securityPerm2= new SecurityPermission(PermissionState.None);
securityPerm2.FromXml(securityPerm1.ToXml());
Console.WriteLine("Result of ToFromXml = " +
securityPerm2.ToString());
}
catch(Exception e)
{
Console.WriteLine("ToFromXml failed :" + securityPerm1.ToString() + e);
continue;
}
}
return returnValue;
}
bool ToFromXmlDemo()
{
bool returnValue = true;
SecurityPermissionFlag security1;
SecurityPermission^ securityPerm1;
SecurityPermission^ securityPerm2;
SecurityGenerator^ SecurityGen1 = gcnew SecurityGenerator;
SecurityGenerator^ SecurityGen2 = gcnew SecurityGenerator;
SecurityGen1->ResetIndex();
while ( SecurityGen1->GetSecurityFlag( &security1 ) )
{
securityPerm1 = gcnew SecurityPermission(security1);
continue;
Console::WriteLine( "********************************************************\n" );
SecurityGen2->ResetIndex();
try
{
securityPerm2 = gcnew SecurityPermission( PermissionState::None );
securityPerm2->FromXml( securityPerm1->ToXml() );
Console::WriteLine( "Result of ToFromXml = {0}", securityPerm2 );
}
catch ( Exception^ e )
{
Console::WriteLine( "ToFromXml failed :{0}{1}", securityPerm1, e );
continue;
}
}
return returnValue;
}
public:
private boolean ToFromXmlDemo()
{
boolean returnValue = true;
SecurityPermissionFlag security1[] = new SecurityPermissionFlag[1];
SecurityPermission securityPerm1[] = new SecurityPermission[1];
SecurityPermission securityPerm2[] = new SecurityPermission[1];
SecurityGenerator securityGen1 = new SecurityGenerator();
SecurityGenerator securityGen2 = new SecurityGenerator();
securityGen1.ResetIndex();
while (securityGen1.CreateSecurity(securityPerm1, security1)) {
if (securityPerm1[0] == null) {
continue ;
}
Console.WriteLine("*****************************"
+ "***************************\n");
securityGen2.ResetIndex();
try {
securityPerm2[0] =
new SecurityPermission(PermissionState.None);
securityPerm2[0].FromXml(securityPerm1[0].ToXml());
Console.WriteLine(("Result of ToFromXml = "
+ securityPerm2[0].ToString()));
}
catch(System.Exception e) {
Console.WriteLine(("ToFromXml failed :"
+ securityPerm1[0].ToString() + e));
continue ;
}
}
return returnValue ;
} //ToFromXmlDemo
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
SecurityPermission-Klasse
SecurityPermission-Member
System.Security.Permissions-Namespace