title: how to bind my dropdownlist by json result?
body: <p>my json string in developer tool network tab is:</p>
  
  <pre><code>"{\"1\":\"GJ_CITY1\",\"2\":\"GJ_CITY2\",\"3\":\"GJ_CITY3\",
    \"4\":\"GJ_CITY1\",\"5\":\"Aman\",\"6\":\"Aman\",
    \"7\":\"Aman\",\"8\":\"Aman\",\"9\":\"Alwar\"}"
  </code></pre>
  
  <p>i saw various articles but that doesn't work ,i am new to ajax data bindig and my mvc code is  </p>
  
  <pre><code>$.ajax({
          type:"GET",
          datatype:"JSON",
          url: queryLink,
          async: true,
          success: function (result) {
  
              $('#Cities').html("");//clear before bind
              $.each(result, function (i, Cities) {
                  $("#Cities").append($('&lt;option value=\"" + key + "\"&gt;" + val + "&lt;/option&gt;'));
              });
          }
  });
  </code></pre>
  
  <p>my controller code is </p>
  
  <pre><code> CitiesDao cities_obj = new CitiesDao();
          HybridNetworkHandoverdto obj = new HybridNetworkHandoverdto();
          var query1 = cities_obj.Details().Tables[0].AsEnumerable().Select(t =&gt; new CityDto
          {
              State_id = t.Field&lt;long&gt;("state_id"),
              State_name = t.Field&lt;string&gt;("state_name"),
              City_id = t.Field&lt;long&gt;("City_id"),
              City_name = t.Field&lt;string&gt;("City_name")
          }).ToList();
          ViewBag.cities = query1;
          Dictionary&lt;string, string&gt; abc = new Dictionary&lt;string, string&gt;();
          foreach (var item in query1)
          {
              abc.Add(item.City_id.ToString(),item.City_name);
          }
  
          //string jsonResult = JsonConvert.SerializeObject(abc);
          var jsonResult = new JavaScriptSerializer();
          var json = jsonResult.Serialize(abc);
  
  
          return Json(json, JsonRequestBehavior.AllowGet);
  </code></pre>