¿Se puede forzar la serialización de un valor enum en un entero?

Posible duplicado:
¿Cómo serializo un valor de enumeración como un int?

¡Hola a todos!

Me pregunto si hay una manera de forzar la serialización de un valor de enumeración en su valor entero, en lugar de su representación de cadena.

Para ponerlo en contexto: estamos utilizando, en una aplicación web que depende en gran medida de los servicios web, una única clase de base para todos nuestros encabezados de solicitud, independientemente del tipo de solicitud.

Quiero agregar un campo de Resultado al encabezado, por lo que tendremos un lugar para pasar sugerencias a la aplicación de llamadas sobre cómo se realizó la operación en el lado del servicio web. Ya tenemos una enumeración declarada a tal efecto, pero como tenemos aplicaciones heredadas que invocan esos servicios web que quizás no conozcan sobre esas enumeraciones, me gustaría enviar esos valores como números enteros.

Ya hemos tenido que reducir la longitud de esos encabezados usando el [XmlElement (ElementName = “stringprespresentationOfAttributeName”)] porque ocasionalmente excedíamos la longitud máxima de la URL del IE, y me pregunté si hay atributos similares para forzar la serialización de Enumerar los valores en enteros.

¿Alguien ha oído hablar de tal atributo?

Como siempre, gracias por la ayuda, Pascal.

Las enumeraciones se serializan a ints. Pero en general, si no le gusta la forma en que una de sus propiedades se serializa a XML, puede hacer esto:

[XmlIgnore] public MyThing MyThing { get; set; } [XmlElement("MyThing")] [EditorBrowsable(EditorBrowsableState.Never), Browsable(false)] public string MyThingForSerialization { get { return //convert MyThing to string; } set { MyThing = //convert string to MyThing; } } 

Las enumeraciones NO se serializan como int por defecto. Estoy usando XMLSerializer para serializar una clase y tengo el mismo problema que el descrito.

(El ejemplo de Matt Howells parece funcionar si cambia el scope de MyThingForSerialization a público pero me gustaría ver una mejor implementación porque esto crea 1 propiedad pública adicional)