2016-04-13 9 views
1

私はASP.NETを初めて使用しています。このようなWebAPIのコントローラにデータを返すとき、私は、JSONの解析を行っている ASP.NETのJsonに解析してデータを返す際にエラーが発生する

`

しかし The best overloaded method match for Json(List,JsonSerializerSettings) has some invalid arugumentsを示すようにエラーが発生した`

public JsonResult getResult() 
     { 
      string dataconfig = Convert.ToString(ConfigurationManager.ConnectionStrings["Onviodb"]); 
      SqlConnection cnn = new SqlConnection(dataconfig); 
      SqlCommand cmd = null; 
      String sqlQuery = null; 
      SqlDataReader dataReader = null; 

      var list = new List<onvioAPI>(); 
      try 
      { 
       cnn.Open(); 
       sqlQuery = "Select * from tbl_Projects"; 
       cmd = new SqlCommand(sqlQuery, cnn); 
       dataReader = cmd.ExecuteReader(); 
       while (dataReader.Read()) 
       { 
        onvioAPI od = new onvioAPI(); 
        //od.id = Int32.Parse(dr["ID"].ToString()); 
        od.aname = Convert.ToString(dataReader["Agency Contact Name"]); 
        od.vname = Convert.ToString(dataReader["Vendor Name"]); 
        od.pcity = Convert.ToString(dataReader["Project City"]); 
        od.pstate = Convert.ToString(dataReader["Project State"]); 
        od.vcity = Convert.ToString(dataReader["Vendor City"]); 
        list.Add(od); 

       } 

       cnn.Close(); 
      } 
      catch (Exception ex) 
      { 
       Console.WriteLine("Can not open connection ! " + ex); 
      } 

      return Json(list,JsonRequestBehavior.AllowGet); 
     } 
。 どうすればよいですか?事前

答えて

1

2つのJsonResult種類があるので、それは起こった:System.Web.Mvcenum JsonRequestBehaviorで)名前空間とSystem.Web.Http.Resultsから1(JsonResult<T>)から1が、私はあなたがそれらを混同だと思います。解決策は次のとおりです。

using System.Web.Http; 
//using System.Web.Mvc; 

    public IHttpActionResult getResult() 
    { 
     //your code.. 
     var list = new List<onvioAPI>(); 
     //your code.. 
     return Json(list); 
    } 
0

で おかげでこれは動作するはず

List<onvioAPI> list = new List<onvioAPI>(); 

、これを試してみてください。

関連する問題