发送返回Ajax调用的类对象

时间:2014-12-10 14:44:18

标签: c# asp.net ajax class

我的目标是发送一个返回到Default.aspx中的Ajax调用的类对象。

Default.aspx将json字符串发送到[WebMethod]:{ID:someid}

connectionstring jsonobject定义了jsondata.mdf。

jsondata.mdf包含列:idd, datetime, col1, col2col3,包含许多行数据。

返回行有问题:

return json2.ToArray();

Default.aspx.cs

    [System.Web.Services.WebMethod]
    public static string GetJSONdata(string ID)
    {
        DataSet ds = new DataSet();
        DataTable dt = new DataTable();
        string connStr = ConfigurationManager.ConnectionStrings["jsonobject"].ConnectionString;
        string cmdStr = "SELECT ([idd],[datetime],[col1],[col2],[col3]) FROM [jsondata] WHERE [idd]=@idd;";
        try
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                using (SqlCommand cmd = new SqlCommand(cmdStr, conn))
                {
                    conn.Open();
                    cmd.Parameters.AddWithValue("@idd", ID);
                    using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                    {
                        da.Fill(ds);
                        dt = ds.Tables[0];
                    }
                }
            }
        }
        catch (Exception ex)
        {

        }
        List<dataclass> classdata = new List<dataclass>();
        foreach (DataRow dr in dt.Rows)
        {
            dataclass dc = new dataclass();
            dc.idd = Convert.ToString(dr["idd"]);
            dc.datetime = Convert.ToString(dr["datetime"]);
            dc.col1 = Convert.ToString(dr["col1"]);
            dc.col2 = Convert.ToString(dr["col2"]);
            dc.col3 = Convert.ToString(dr["col3"]);
            classdata.Add(dc);
        }
        return classdata.ToArray();
    }

的Class1.cs

public class dataclass
{
    public string idd { get; set; }
    public string datetime { get; set; }
    public string col1 { get; set; }
    public string col2 { get; set; }
    public string col3 { get; set; }
}

0 个答案:

没有答案