我正在使用WebClient.UploadString方法将JSON对象发送到Web服务。 这一切都正常工作,直到序列化的JSON对象的内容包含特殊字符,例如é,è,ê,ë,à或û
我得到的错误是接收Web服务端的HTTP 400,查看日志显示请求中缺少整个json字符串,几乎就像它无法发送一样。
以下是我运行以发送请求的代码:
var json = JsonConvert.SerializeObject(item, Formatting.Indented);
var response = WebClient.UploadString(GetRequestUri(partialUrl), "POST", json);
var result = JsonConvert.DeserializeObject<T>(response);
到目前为止,我已经尝试过:
urlencoding整个字符串,但这会产生错误,因为前面的“{也是编码的(我认为)。
将WebClient编码设置为UTF8没有任何区别(我认为这是默认值)。
任何建议的帮助都将不胜感激。
提前致谢。