Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase XmlElementAttributes

 

Publicado: octubre de 2016

Representa una colección de objetos XmlElementAttribute que XmlSerializer usa para reemplazar el modo predeterminado en que serializa una clase.

Espacio de nombres:   System.Xml.Serialization
Ensamblado:  System.Xml (en System.Xml.dll)

System.Object
  System.Collections.CollectionBase
    System.Xml.Serialization.XmlElementAttributes

public class XmlElementAttributes : CollectionBase

NombreDescripción
System_CAPS_pubmethodXmlElementAttributes()

Inicializa una nueva instancia de la clase XmlElementAttributes.

NombreDescripción
System_CAPS_pubpropertyCapacity

Obtiene o establece el número de elementos que puede contener CollectionBase.(Heredado de CollectionBase).

System_CAPS_pubpropertyCount

Obtiene el número de elementos incluidos en la instancia de CollectionBase. Esta propiedad no se puede invalidar.(Heredado de CollectionBase).

System_CAPS_protpropertyInnerList

Obtiene un ArrayList que contiene la lista de elementos de la CollectionBase instancia.(Heredado de CollectionBase).

System_CAPS_pubpropertyItem[Int32]

Obtiene o establece el elemento en el índice especificado.

System_CAPS_protpropertyList

Obtiene un IList que contiene la lista de elementos de la CollectionBase instancia.(Heredado de CollectionBase).

NombreDescripción
System_CAPS_pubmethodAdd(XmlElementAttribute)

Agrega un XmlElementAttribute a la colección.

System_CAPS_pubmethodClear()

Quita todos los objetos de la CollectionBase instancia. Este método no se puede invalidar.(Heredado de CollectionBase).

System_CAPS_pubmethodContains(XmlElementAttribute)

Determina si la colección contiene el objeto especificado.

System_CAPS_pubmethodCopyTo(XmlElementAttribute[], Int32)

Copia el XmlElementAttributes, o una parte de ella en una matriz unidimensional.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object).

System_CAPS_pubmethodGetEnumerator()

Devuelve un enumerador que recorre en iteración la CollectionBase instancia.(Heredado de CollectionBase).

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodIndexOf(XmlElementAttribute)

Obtiene el índice del elemento XmlElementAttribute.

System_CAPS_pubmethodInsert(Int32, XmlElementAttribute)

Inserta un XmlElementAttribute en la colección.

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual.(Heredado de Object).

System_CAPS_protmethodOnClear()

Realiza procesos personalizados adicionales al borrar el contenido de la CollectionBase instancia.(Heredado de CollectionBase).

System_CAPS_protmethodOnClearComplete()

Realiza procesos personalizados adicionales después de borrar el contenido de la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnInsert(Int32, Object)

Realiza procesos personalizados adicionales antes de insertar un nuevo elemento en la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnInsertComplete(Int32, Object)

Realiza procesos personalizados adicionales después de insertar un nuevo elemento en la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnRemove(Int32, Object)

Realiza procesos personalizados adicionales al quitar un elemento de la CollectionBase instancia.(Heredado de CollectionBase).

System_CAPS_protmethodOnRemoveComplete(Int32, Object)

Realiza procesos personalizados adicionales después de quitar un elemento de la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnSet(Int32, Object, Object)

Realiza procesos personalizados adicionales antes de establecer un valor en la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnSetComplete(Int32, Object, Object)

Realiza procesos personalizados adicionales después de establecer un valor en la instancia de CollectionBase.(Heredado de CollectionBase).

System_CAPS_protmethodOnValidate(Object)

Realiza procesos personalizados adicionales al validar un valor.(Heredado de CollectionBase).

System_CAPS_pubmethodRemove(XmlElementAttribute)

Quita el objeto especificado de la colección.

System_CAPS_pubmethodRemoveAt(Int32)

Quita el elemento en el índice especificado de la CollectionBase instancia. Este método no es reemplazable.(Heredado de CollectionBase).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

NombreDescripción
System_CAPS_pubinterfaceSystem_CAPS_privmethodICollection.CopyTo(Array, Int32)

Copia la totalidad de CollectionBase en una matriz Array unidimensional compatible, comenzando en el índice especificado de la matriz de destino.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Add(Object)

Agrega un objeto al final de CollectionBase.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Contains(Object)

Determina si CollectionBase contiene un elemento específico.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.IndexOf(Object)

Busca el objeto Object especificado y devuelve el índice de base cero de la primera aparición en toda la colección CollectionBase.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Insert(Int32, Object)

Inserta un elemento en CollectionBase, en el índice especificado.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Remove(Object)

Quita la primera aparición de un objeto específico de la interfaz CollectionBase.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.IsSynchronized

Obtiene un valor que indica si el acceso a la interfaz CollectionBase está sincronizado (es seguro para subprocesos).(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a CollectionBase.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.IsFixedSize

Obtiene un valor que indica si la interfaz CollectionBase tiene un tamaño fijo.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.IsReadOnly

Obtiene un valor que indica si CollectionBase es de solo lectura.(Heredado de CollectionBase).

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.Item[Int32]

Obtiene o establece el elemento en el índice especificado.(Heredado de CollectionBase).

NombreDescripción
System_CAPS_pubmethodAsParallel()

Sobrecargado. Habilita la paralelización de una consulta.(Definido por ParallelEnumerable).

System_CAPS_pubmethodAsQueryable()

Sobrecargado. Convierte un IEnumerable para un IQueryable.(Definido por Queryable).

System_CAPS_pubmethodCast<TResult>()

Convierte los elementos de un IEnumerable al tipo especificado.(Definido por Enumerable).

System_CAPS_pubmethodOfType<TResult>()

Filtra los elementos de un IEnumerable basado en un tipo especificado.(Definido por Enumerable).

La XmlElementAttributes devuelta por la XmlElements propiedad de la XmlAttributes clase. Mediante el uso de la XmlAttributeOverrides (clase) y XmlAttributes (clase), puede invalidar el valor predeterminado forma en que el XmlSerializer se serializa una clase.

El siguiente ejemplo se serializa la Transportation clase, que contiene un solo campo denominado Vehicles que devuelve un ArrayList. El ejemplo aplican primero dos instancias de la XmlElementAttribute clase a la Vehicles campo que especifica los tipos de objetos del XmlSerializer inserta en la matriz. A continuación, el ejemplo crea dos XmlElementAttribute objetos que se va a invalidar el comportamiento de los atributos aplicados a la Vehicles propiedad. Los dos objetos de reemplazo se agregan a la XmlElementAttributes colección de un XmlAttributes. Por último, el ejemplo agrega el XmlAttributes para un XmlAttributeOverrides, lo cual permite el XmlSerializer para insertar los nuevos tipos de objeto en la ArrayList devuelta por la Vehicles campo.

using System;
using System.IO;
using System.Xml.Serialization;
using System.Collections;
using System.Xml;

public class Transportation
{
   // Override these two XmlElementAttributes.
   [XmlElement(typeof(Car)),
   XmlElement(typeof(Plane))]
   public ArrayList Vehicles;
}

public class Car
{
   public string Name;
}

public class Plane
{
   public string Name;
}

public class Truck
{
   public string Name;
}

public class Train
{
   public string Name;
}

public class Test
{
   public static void Main()
   {
      Test t = new Test();
      t.SerializeObject("OverrideElement.xml");
   }

   public XmlSerializer CreateOverrider()
   {
      // Create XmlAtrributes and XmlAttributeOverrides instances. 

      XmlAttributes attrs = new XmlAttributes();

      XmlAttributeOverrides xOver = 
      new XmlAttributeOverrides();

      /* Create an XmlElementAttributes object to override 
      one of the attributes applied to the Vehicles property. */
      XmlElementAttribute xElement1 = 
      new XmlElementAttribute(typeof(Truck));
      // Add the XmlElementAttribute to the collection.
      attrs.XmlElements.Add(xElement1);

      /* Create a second XmlElementAttribute and 
      add it to the collection. */
      XmlElementAttribute xElement2 = 
      new XmlElementAttribute(typeof(Train));
      attrs.XmlElements.Add(xElement2);

      /* Add the XmlAttributes to the XmlAttributeOverrides,
      specifying the member to override. */
      xOver.Add(typeof(Transportation), "Vehicles", attrs);

      // Create the XmlSerializer, and return it.
      XmlSerializer xSer = new XmlSerializer
      (typeof(Transportation), xOver);
      return xSer;
   }

   public void SerializeObject(string filename)
   {
      // Create an XmlSerializer instance.
      XmlSerializer xSer = CreateOverrider();

      // Create the object.
      Transportation myTransportation = 
      new Transportation();

      /* Create two new, overriding objects that can be
      inserted into the Vehicles array. */
      myTransportation.Vehicles = new ArrayList();
      Truck myTruck = new Truck();
      myTruck.Name = "MyTruck";

      Train myTrain = new Train();
      myTrain.Name = "MyTrain";

      myTransportation.Vehicles.Add(myTruck);
      myTransportation.Vehicles.Add(myTrain);

      TextWriter writer = new StreamWriter(filename);
      xSer.Serialize(writer, myTransportation);
   }
}

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 1.1
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: