title: Call a WebMethod passing Dictionary<string, string> as parameter
body: <p>I am trying to streamline the process of returning the data from my WebMethod layer to the client and represent the set of parameters in coming from the client in a <code>Dictionary&lt;string,string&gt;</code> to do something like this:</p>
  
  <pre><code>    [WebMethod(EnableSession = true)]
      [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
      public static override ResultObject&lt;List&lt;PatientInfo&gt;&gt; GetResults(Dictionary&lt;string, string&gt; query)
      {
          ResultObject&lt;List&lt;PatientInfo&gt;&gt; resultObject = null;
  
          if (!query.ContainsKey("finValue")) 
          {
              resultObject = new ResultObject&lt;List&lt;PatientInfo&gt;&gt;("Missing finValue parameter from the query");
          }
  
          string finValue = query["finValue"];
  
          if(finValue == null)
          {
              resultObject = new ResultObject&lt;List&lt;PatientInfo&gt;&gt;("Missing finValue parameter value from the query");
          }
  
          var patientData =  GetPatientsByFin(finValue);
          resultObject = new ResultObject&lt;List&lt;PatientInfo&gt;&gt;(patientData);
          return resultObject;
  
      }
  }
  </code></pre>
  
  <p>My question is: how do I pass and de-serialize the Dictionary parameter?</p>