Share via


Orden de los miembros de datos

En algunas aplicaciones, es útil conocer el orden en el que se envían los datos de los distintos miembros de datos o en el que se espera recibir (como el orden en el que los datos aparecen en el XML serializado). A veces puede ser necesario cambiar este orden. En este tema se explican las reglas de la clasificación.

Reglas básicas

Las reglas básicas sobre el orden de los datos incluyen:

  • Si un tipo de contrato de datos forma parte de una jerarquía de herencia, los miembros de datos de sus tipos básicos siempre aparecerán en primer lugar.
  • A continuación, se encontrarán los miembros de datos del tipo actual que no tienen la propiedad Order del conjunto de atributos DataMemberAttribute, en orden alfabético.
  • Después se encontrará cualquier miembro de datos que tenga la propiedad Order del conjunto de atributos DataMemberAttribute. Se ordenan por el valor de la propiedad Order y después alfabéticamente si hay más de un miembro de un valor Order concreto. Los valores de orden pueden omitirse.

El orden alfabético se establece llamando al método CompareOrdinal.

Ejemplos

Observe el código siguiente.

El XML generado es similar a lo siguiente.

<DerivedType>
    <!-- Zebra is a base data member, and appears first. -->
    <zebra/> 

    <!-- Cat has no Order, appears alphabetically first. -->
    <cat/>
    
   <!-- Dog has no Order, appears alphabetically last. -->
    <dog/> 

    <!-- Bird is the member with the smallest Order value -->
    <bird/>

    <!-- Albatross has the next Order value, alphabetically first. -->
    <albatross/>

    <!-- Parrot, with the next Order value, alphabetically last. -->
     <parrot/>

    <!-- Antelope is the member with the highest Order value. Note that 
    Order=2 is skipped -->
     <antelope/> 
</DerivedType>

Consulte también

Referencia

DataContractAttribute

Conceptos

Equivalencia del contrato de datos
Utilización de contratos de datos