Pregunta

Para empezar, sé que hay dos " tipos " de la serialización JSON actualmente integrada en ASP.Net: puede usar la clase JavaScriptSerializer para serializar su objeto a JSON o la nueva clase DataContractJsonSerializer para convertir un objeto a JSON.

Si usa el método JavaScriptSerializer (), debe marcar su clase como Serializable (); si usa el método DataContractJsonSerializer, debe marcar su clase como DataContract (), y marcar sus propiedades como DataMembers ().

Si lo desea, puede especificar un atributo NAME para cada DataMembers, por lo que cuando la propiedad se serializa / deserializa, usa ese nombre. Para mis propósitos, considero que esto es útil para hacer que el JSON no sea tan " wordy " ;. Por ejemplo, en lugar de indicar " UserID " como mi propiedad (y hacer que se repita a lo largo de mi objeto JSON), me gustaría simplemente usar " u " ;. Menos datos a través del cable, etc.

Los dos motores de serialización son un poco diferentes, y solo puede usar el JavaScriptSerializer con ASP.Net Web / Script Methods. Ahí radica mi problema.

¿Existe una forma equivalente de establecer un nombre de propiedad en otra cosa, estrictamente para los propósitos de serialización / deserialización utilizando el JavaScriptSerializer normal?

¿Fue útil?

Solución

No, no hay.

Otros consejos

Suponiendo que con UTF-8 estás ahorrando 40 bits por el cable con esta técnica, no vale la pena perder el sueño.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top