how to remove backslashes and double quotes in json string

11,305

This is happening because you are serializing the data to JSON manually (in code) and when you return the data from controller, the framework serializes the same thing again, which is already a json formatted string!

To solve that, simply do not serialize it, let the MVC/Web API framework do its job and create a JSON out of your object.

If you are using Web API use like this

[HttpGet]
public object jsonvalues()
{
    var x = new
    {
        status = "Success"
    };
    return x;
}

If you are using MVC, use like this

[HttpGet]
public ActionResult jsonvalues()
{
    var x = new
    {
        status = "Success"
    };
    return Json(x, JsonRequestBehavior.AllowGet);
}

Both will return

{ status: "Success" }

Share:
11,305
hakkeem
Author by

hakkeem

Updated on July 21, 2022

Comments

  • hakkeem
    hakkeem almost 2 years

    I am trying to pass string to json object, and it works. However there are some backslashes and double quotes in the json! How can I remove them?

    I am using c# Web API. This is my code.

    public string jsonvalues()
    {
        var x = new
        {  
          status = "Success"
        };
        var javaScriptSerializer = new
        System.Web.Script.Serialization.JavaScriptSerializer();
        var jsonString = javaScriptSerializer.Serialize(x);
        return jsonString;
    }  
    

    When I return this function in controller, I get the result like this

    "{\"status\":\"Success\"}"

    • Fabio Salvalai
      Fabio Salvalai over 8 years
      where does your observed value , "{\"status\":\"Success\"}". come from ? did you observe this in the debugger, or did you log / output it somewhere ?
    • Johan
      Johan over 8 years
      Visual studio (assuming you are using this as an IDE) adds the slashes, but if you use something like fiddler to view the response, then you would see that there are no slashes, etc.
    • hakkeem
      hakkeem over 8 years
      @FabioSalvalai: this is the output displayed on the browser
    • Fabio Salvalai
      Fabio Salvalai over 8 years
      Shown in the browser, there are surrounding quotes as well ?
    • blogbydev
      blogbydev over 8 years
      Isn't this same question as stackoverflow.com/questions/33094739/…
  • hakkeem
    hakkeem over 8 years
    :but i cant able to return 'x' directly,it shows an error ''Cannot implicitly convert type '<anonymous type:string status>' to 'string'.
  • Arghya C
    Arghya C over 8 years
    @hakkeem see the methods I have shown as example, you do not return string from your web api controller method, return object instead.
  • conterio
    conterio over 6 years
    what namespace does Json live in?