title: RestSharp changing "Content-Type" change from "application/json" to "x-www-form-urlencoded"
body: <p>THE PROBLEM:</p>
  
  <p>1 - The "Content-Type" change from "application/json"  to "x-www-form-urlencoded"</p>
  
  <p>2 - The Task parameter is converted from object {...} to string "{...}"</p>
  
  <p>I looked this:
  <a href="https://stackoverflow.com/questions/28532677/restsharp-defaulting-content-type-to-application-x-www-form-urlencoded-on-post">RestSharp defaulting Content-Type to application/x-www-form-urlencoded on POST</a>
  But, don't solved my problem. Solved the problem 1, but don't the 2. I can't keep object parameter.</p>
  
  <p>How can I solve this? </p>
  
  <p>Code: </p>
  
  <pre><code>  var parametros = new Dictionary&lt;string, object&gt;();
  
    parametros.Add("user", "23j7yh653eb7002e53df02");
    parametros.Add("client", "58e652dbe33eb7002e53df6f");
    parametros.Add("obs", "new one");
  
    var client = new RestClient("https://my.domain.com");
    var request = new RestRequest("api/newtask", Method.POST); 
  
    request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0");
    request.AddHeader("Content-Type", "application/json");
    request.AddHeader("Host", "my.domain.com");
    request.AddHeader("Referer", "https://my.domain.com/");
    request.AddHeader("Accept", "application/json, text/plain, */*");
    request.AddHeader("Accept-Encoding", "gzip, deflate, br");
    request.AddHeader("Authorization", "Bearer 85754r5565546544545566t55hf4f4j5k4fj45jk");
  </code></pre>
  
  <p>And this one I try diferent way:</p>
  
  <pre><code>  parametros.Add("task", "{ \"desc\" = \"This is my new task\", \"id\" = \"102030\" }");
  </code></pre>
  
  <p>or remove and put this:</p>
  
  <pre><code>  request.AddParameter("task",new {desc="This is my new task", id="102030"});
  </code></pre>
  
  <p>or I try this:</p>
  
  <pre><code>  task myTask = new task();
    myTask.id = "102030";
    myTask.name = "This is my new task";
  
    request.AddParameter("task", Newtonsoft.Json.JsonConvert.SerializeObject(myTask));
  </code></pre>
  
  <p>Then</p>
  
  <pre><code>  foreach (var item in parametros)
    {
          //request.AddParameter(item.Key.ToString(), item.Value, ParameterType.RequestBody);  //I tried this one, but don't worked
          request.AddParameter(item.Key.ToString(), item.Value);
    }
  
    IRestResponse response2 = client.Post(request);
    string appoint = response2.Content;
  </code></pre>