Maneira correta de manipular o caractere E comercial no envio de cadeia JSON para o serviço da Web REST

ESTÁ BEM,

Estou usando oSystem.Runtime.Serialization e aDataContractJsonSerialization.

O problema é que na solicitação eu envio um valor de uma propriedade com o& personagem. Dizer,AT&T, e recebo uma resposta com erro:Invalid JSON Data.

Eu pensei que o escape seria feito dentro da biblioteca, mas agora eu vejo que a serialização é deixada intocada pelo e comercial& personagem.

Sim, para um formato JSON, isso é válido. Mas será um problema para minha solicitação POST, já que preciso enviar isso para um servidor que, se contiver um e comercial, responderá com erro, portanto, aqui estou.

HttpUtility.HtmlEncode está noSystem.Web biblioteca e então o caminho a percorrer é usandoUri.EscapeUriString. Eu fiz isso para tentar, mas de qualquer maneira, e sem isso todas as solicitações estão funcionando bem, exceto que um e comercial está em um valor.

EDITAR:HttpUtility classe é portada para o Windows Phone SDK, mas a maneira preferida para codificar uma string deve ser aindaUri.EscapeUriString.

O primeiro pensamento foi sujar as mãos e começar a substituir o caractere especial que causaria um problema no servidor, mas, eu me pergunto, há outra solução que eu deveria fazer, que seria eficiente e "adequado"?

Eu deveria dizer que eu uso

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

Para converter o JSON em umbyte[] e escreva para oStream. E,

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

Enquanto oWebRequest.ContentType.

Então, eu estou confuso por uma razão ou algo que eu sinto falta?

Obrigado.