Compartilhar via


CodeAccessPermission.ToXml Método

Definição

Quando substituído em uma classe derivada, cria uma codificação XML do objeto de segurança e seu estado atual.

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

Retornos

Uma codificação XML do objeto de segurança, incluindo quaisquer informações de estado.

Implementações

Exemplos

O exemplo de código a seguir mostra uma substituição do ToXml método . Este exemplo de código faz parte de um exemplo maior fornecido para a CodeAccessPermission classe .

public:
   virtual SecurityElement^ ToXml() override
   {
      // Use the SecurityElement class to encode the permission to XML.
      SecurityElement^ esd = gcnew SecurityElement( "IPermission" );
      String^ name = NameIdPermission::typeid->AssemblyQualifiedName;
      esd->AddAttribute( "class", name );
      esd->AddAttribute( "version", "1.0" );
      
      // The following code for unrestricted permission is only included as an example for
      // permissions that allow the unrestricted state. It is of no value for this permission.
      if ( m_Unrestricted )
      {
         esd->AddAttribute( "Unrestricted", true.ToString() );
      }

      if ( m_Name != nullptr )
      {
         esd->AddAttribute( "Name", m_Name );
      }

      return esd;
   }
public override SecurityElement ToXml()
{
    // Use the SecurityElement class to encode the permission to XML.
    SecurityElement esd = new SecurityElement("IPermission");
    String name = typeof( NameIdPermission).AssemblyQualifiedName;
    esd.AddAttribute("class", name);
    esd.AddAttribute("version", "1.0");

    // The following code for unrestricted permission is only included as an example for
    // permissions that allow the unrestricted state. It is of no value for this permission.
    if (m_Unrestricted)
    {
        esd.AddAttribute("Unrestricted", true.ToString());
    }
    if (m_Name != null) esd.AddAttribute( "Name", m_Name );
    return esd;
}
    Public Overrides Function ToXml() As SecurityElement
        ' Use the SecurityElement class to encode the permission to XML.
        Dim esd As New SecurityElement("IPermission")

        Dim name As String = GetType(NameIdPermission).AssemblyQualifiedName
        esd.AddAttribute("class", name)
        esd.AddAttribute("version", "1.0")

        ' The following code for unrestricted permission is only included as an example for
        ' permissions that allow the unrestricted state. It is of no value for this permission.
        If m_Unrestricted Then
            esd.AddAttribute("Unrestricted", True.ToString())
        End If
        If Not (m_Name Is Nothing) Then
            esd.AddAttribute("Name", m_Name)
        End If
        Return esd
    End Function 'ToXml
End Class

Comentários

O código personalizado que estende objetos de segurança precisa implementar os ToXml métodos e FromXml para tornar os objetos codificados em segurança.

Notas aos Implementadores

Você deve substituir esse método em uma classe derivada.

Aplica-se a