title: Postman unable to set values to dictionary parameter for C# web api
body: <p>I have below code written to test for reading the dictionary key and values from Postman.</p>
  
  <p>C# web api method:</p>
  
  <pre><code>[OperationContract]
  [WebInvoke(Method = "POST", UriTemplate = "Service/testdictionary",
  BodyStyle = WebMessageBodyStyle.WrappedRequest)]
  [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
  public void testdictionary(Dictionary&lt;string,object&gt; data)
  {
  if(data != null)
  {
  string str1 = data["a1"].ToString();
  string str2 = data["a2"].ToString();
  string str3 = data["a3"].ToString();
  }
  }
  </code></pre>
  
  <p>Postman input Body:(raw and JSON(application/json))</p>
  
  <pre><code>{
  "data": {
  "a1": "b1",
  "a2": "b2",
  "a3": "b3"
  }
  }
  </code></pre>
  
  <p>How am I calling the method from Postman:</p>
  
  <p><img src="https://i.stack.imgur.com/xOi1K.png" alt="Postman Call"></p>
  
  <p>What is the issue:
  Whenever I am trying to assign dictionary object data from the postman, in C# code it is getting assigned as an empty dictionary.</p>
  
  <p>What is required:
  I want to read a dictionary element from postman to my API code.</p>