Compartir vía


ISecurityEncodable.ToXml Método

Definición

Crea una codificación XML del objeto de seguridad y su estado actual.

public:
 System::Security::SecurityElement ^ ToXml();
public System.Security.SecurityElement? ToXml ();
public System.Security.SecurityElement ToXml ();
abstract member ToXml : unit -> System.Security.SecurityElement
Public Function ToXml () As SecurityElement

Devoluciones

Codificación XML del objeto de seguridad, incluida cualquier información de estado.

Ejemplos

En el ejemplo de código siguiente se muestra cómo implementar el FromXml método . Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase ISecurityEncodable.

    // Produce XML from the permission's fields.
public:
    virtual SecurityElement^ ToXml() override
    {
        // These first three lines create an element with the required format.
        SecurityElement^ element = gcnew SecurityElement("IPermission");
        // Replace the double quotation marks () 
        // with single quotation marks ()
        // to remain XML compliant when the culture is not neutral.
        element->AddAttribute("class", 
            GetType()->AssemblyQualifiedName->Replace('\"', '\''));
        element->AddAttribute("version", "1");

        if (!specifiedAsUnrestricted)
        {
            element->AddAttribute("Flags", 
                Enum::Format(SoundPermissionState::typeid, stateFlags, "G"));
        }   
        else
        {
            element->AddAttribute("Unrestricted", "true");
        }
        return element;
    }
// Produce XML from the permission's fields.
public override SecurityElement ToXml()
{
    // These first three lines create an element with the required format.
    SecurityElement e = new SecurityElement("IPermission");
    // Replace the double quotation marks ("") with single quotation marks ('')
    // to remain XML compliant when the culture is not neutral.
    e.AddAttribute("class", GetType().AssemblyQualifiedName.Replace('\"', '\''));
    e.AddAttribute("version", "1");

    if (!m_specifiedAsUnrestricted)
        e.AddAttribute("Flags", Enum.Format(typeof(SoundPermissionState), m_flags, "G"));
    else
        e.AddAttribute("Unrestricted", "true");
    return e;
}
' Produce XML from the permission's fields.
Public Overrides Function ToXml() As SecurityElement
    ' These first three lines create an element with the required format.
    Dim e As New SecurityElement("IPermission")
    ' Replace the double quotation marks ("") with single quotation marks ('')
    ' to remain XML compliant when the culture is not neutral.
    e.AddAttribute("class", [GetType]().AssemblyQualifiedName.Replace(ControlChars.Quote, "'"c))
    e.AddAttribute("version", "1")

    If Not m_specifiedAsUnrestricted Then
        e.AddAttribute("Flags", [Enum].Format(GetType(SoundPermissionState), m_flags, "G"))
    Else
        e.AddAttribute("Unrestricted", "true")
    End If
    Return e

End Function 'ToXml

Comentarios

El código personalizado que extiende los objetos de seguridad debe implementar los ToXml métodos y FromXml para que los objetos sean codificables por seguridad.

Se aplica a