ISecurityEncodable.FromXml(SecurityElement) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Rekonstruksi objek keamanan dengan status tertentu dari pengodean XML.
public:
void FromXml(System::Security::SecurityElement ^ e);
public void FromXml (System.Security.SecurityElement e);
abstract member FromXml : System.Security.SecurityElement -> unit
Public Sub FromXml (e As SecurityElement)
Parameter
Pengodean XML yang digunakan untuk mengonstruksi ulang objek keamanan.
Contoh
Contoh kode berikut menunjukkan penerapan FromXml metode . Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk ISecurityEncodable kelas .
// Populate the permission's fields from XML.
public:
virtual void FromXml(SecurityElement^ element) override
{
specifiedAsUnrestricted = false;
stateFlags = (SoundPermissionState)0;
// If XML indicates an unrestricted permission,
// make this permission unrestricted.
String^ attributeString =
(String^) element->Attributes["Unrestricted"];
if (attributeString != nullptr)
{
specifiedAsUnrestricted = Convert::ToBoolean(attributeString);
if (specifiedAsUnrestricted)
{
stateFlags = SoundPermissionState::PlayAnySound;
}
}
// If XML indicates a restricted permission, parse the flags.
if (!specifiedAsUnrestricted)
{
attributeString = (String^) element->Attributes["Flags"];
if (attributeString != nullptr)
{
stateFlags = (SoundPermissionState) Convert::ToInt32(
Enum::Parse(SoundPermissionState::typeid,
attributeString, true));
}
}
}
// Populate the permission's fields from XML.
public override void FromXml(SecurityElement e)
{
m_specifiedAsUnrestricted = false;
m_flags = 0;
// If XML indicates an unrestricted permission, make this permission unrestricted.
String s = (String)e.Attributes["Unrestricted"];
if (s != null)
{
m_specifiedAsUnrestricted = Convert.ToBoolean(s);
if (m_specifiedAsUnrestricted)
m_flags = SoundPermissionState.PlayAnySound;
}
// If XML indicates a restricted permission, parse the flags.
if (!m_specifiedAsUnrestricted)
{
s = (String)e.Attributes["Flags"];
if (s != null)
{
m_flags = (SoundPermissionState)
Convert.ToInt32(Enum.Parse(typeof(SoundPermission), s, true));
}
}
}
' Populate the permission's fields from XML.
Public Overrides Sub FromXml(ByVal e As SecurityElement)
m_specifiedAsUnrestricted = False
m_flags = 0
' If XML indicates an unrestricted permission, make this permission unrestricted.
Dim s As String = CStr(e.Attributes("Unrestricted"))
If Not (s Is Nothing) Then
m_specifiedAsUnrestricted = Convert.ToBoolean(s)
If m_specifiedAsUnrestricted Then
m_flags = SoundPermissionState.PlayAnySound
End If
End If
' If XML indicates a restricted permission, parse the flags.
If Not m_specifiedAsUnrestricted Then
s = CStr(e.Attributes("Flags"))
If Not (s Is Nothing) Then
m_flags = CType(Convert.ToInt32([Enum].Parse(GetType(SoundPermission), s, True)), SoundPermissionState)
End If
End If
End Sub
Keterangan
Kode kustom yang memperluas objek keamanan perlu mengimplementasikan ToXml metode dan FromXml untuk membuat objek dapat dikodekan keamanan.