Manera adecuada de manejar el carácter "y" en la cadena JSON enviada al servicio web REST

DE ACUERDO,

Estoy usando elSystem.Runtime.Serialization y elDataContractJsonSerialization.

El problema es que en la solicitud envío un valor de una propiedad con el& personaje. Decir,AT&T, y me sale una respuesta con error:Invalid JSON Data.

Pensé que el escape se haría dentro de la biblioteca, pero ahora veo que la serialización se deja intacta en el símbolo& personaje.

Sí, para un formato JSON esto es válido. Pero será un problema para mi solicitud POST, ya que debo enviarlo a un servidor que, si contiene un signo, responderá con un error, por lo tanto, aquí estoy.

HttpUtility.HtmlEncode está en elSystem.Web biblioteca y por lo que el camino a seguir es utilizandoUri.EscapeUriString. Hice esto para intentarlo, pero de todos modos, y sin él, todas las solicitudes funcionan bien, excepto que un signo está en un valor.

EDITAR:HttpUtility La clase se transfiere al SDK de Windows Phone, pero la forma preferida de codificar una cadena debería ser aúnUri.EscapeUriString.

El primer pensamiento fue ensuciarse las manos y comenzar a reemplazar el carácter especial que causaría un problema en el servidor, pero, me pregunto, ¿hay alguna otra solución que deba hacer, que sea eficiente y "adecuada"?

Debería decir que uso

// Convert the string into a byte array.
byte[] postBytes = Encoding.UTF8.GetBytes(data);

Para convertir el JSON a unbyte[] y escribe alStream. Y,

request.ContentType = "application/x-www-form-urlencoded";

Como elWebRequest.ContentType.

Entonces, ¿estoy en mal estado por una razón o algo que extraño?

Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta