将特殊字符从c#发送到webservice时出错

将特殊字符从c#发送到webservice时出错,c#,web-services,post,C#,Web Services,Post,im使用方法POST向REST服务发送字符串 //--------------------------Method Post-------------------------- public static string methodPost(string header,string url,string body) { var request = (HttpWebRequest)WebRequest.Create(url); request.M

im使用方法POST向REST服务发送字符串

 //--------------------------Method Post--------------------------
    public static string methodPost(string header,string url,string body)
    {

        var request = (HttpWebRequest)WebRequest.Create(url);
        request.Method = "POST";
        if(header!=null) request.Headers.Add(header);
        request.ContentType = "application/json";
        byte[] byteArray = Encoding.UTF8.GetBytes(body);
        request.ContentLength = byteArray.Length;

        Stream dataStream = request.GetRequestStream();

        dataStream.Write(byteArray, 0, byteArray.Length);
        dataStream.Close();
        var response = request.GetResponse();

        Stream stream2 = response.GetResponseStream();
        StreamReader reader2 = new StreamReader(stream2);
        String ok = reader2.ReadToEnd();
        return ok;
    }
如果string body=“test send string”:成功,但string body=“test send”string:未成功。
如何修复它?谢谢!

“test send'string”
是合法的json,但您可以尝试
“test send\'string”
。如果这不起作用,您需要询问管理web服务的人员。

如果您的Rest服务尚未启用,请尝试使用此替换。。。或者试试我的简单ext:
public static类ext{public static string AsAntiInjection(this string str){return str.Replace(“'”,“'”);}}