asp.net mvc ADO.net 取数据 转json 格式

 using Newtonsoft.Json;sql


  public ActionResult GetList(int page,int limit)spa

        {
             
            bbs.OpenConnection();
           // DataSet ds = new DataSet();
            string sql = "SELECT    id,nameFROM table";
            string sqlcount = "select count(*) as total from (" + sql + ")as a ";
            string count = bbs.List(sqlcount).Tables[0].Rows[0]["total"].ToString(); 
            sql = cc.SqlLimit(sql, " id ", page, limit);
           // ds = bbs.List(sql);
            DataTable dt = bbs.List(sql).Tables[0];
            bbs.CloseConnection();
            return Content(JsonConvert.SerializeObject( dt ));
 

        }code


   public ActionResult GetList(int page,int limit)
        {
             
            bbs.OpenConnection();
           // DataSet ds = new DataSet();
            string sql = "SELECT    id,nameFROM table";
            string sqlcount = "select count(*) as total from (" + sql + ")as a ";
            string count = bbs.List(sqlcount).Tables[0].Rows[0]["total"].ToString(); 
            sql = cc.SqlLimit(sql, " id ", page, limit);
           // ds = bbs.List(sql);
            DataTable dt = bbs.List(sql).Tables[0];
            bbs.CloseConnection();
            return Content(JsonConvert.SerializeObject(new ResponseData { code = 0, count = int.Parse(count), msg = "", data = dt }));
 
        }
ci



using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;


namespace Provincial.Models
{
    public class BBSconnect
    {
        protected SqlConnection conn;


        public void OpenConnection()
        {
            conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ConnectionString);
            try
            {
                if (conn.State.ToString() != "Open")
                {
                    conn.Open();
                }
            }
            catch (SqlException ex)
            {


                throw ex;
            }
        }


        public void CloseConnection()
        {
            try
            {
                conn.Close();
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }




        //Insert
        public int InsertData(string sql)
        {
            int i = 0;
            try
            {
                if (conn.State.ToString() == "Open")
                {
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    i = cmd.ExecuteNonQuery();
                }
                return i;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }


        //serach
        public DataSet List(string sql)
        {
            try
            {
                SqlDataAdapter da = new SqlDataAdapter();
                da.SelectCommand = new SqlCommand(sql, conn);
                DataSet ds = new DataSet();
                da.Fill(ds);
                return ds;


            }
            catch (Exception ex)
            {
                throw ex;
            }
        }


        //Detail
        public DataTable Detail(string sql)
        {
            try
            {
                SqlDataAdapter da = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                da.Fill(ds);
                return ds.Tables[0];
            }
            catch (Exception ex)
            {


                throw ex;
            }
        }


        //Delete
        public int Delete(string sql)
        {
            try
            {
                int result = 0;
                SqlCommand cmd = new SqlCommand(sql, conn);
                result = cmd.ExecuteNonQuery();
                return result;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
cmd

}string





   public string SqlLimit(string sql, string orderby, int page, int offset) {






            sql = sql + " order by "+orderby+" asc ";
 
            var orderbyInverse = " order by "+ orderby + " desc ";
            var orderbyInverse2 = " order by "+ orderby + " asc "; 
            var val = sql.Replace("SELECT", "SELECT TOP " + (page * offset) + " ");
         
            sql = "SELECT * FROM (SELECT TOP " + offset + " * FROM (" + val + ") AS inner_tbl";
            if (orderby != "")
            {




                sql += " " + orderbyInverse + " ";


            }
            sql += ") AS outer_tbl";
            if (orderby != "")
            {
                 
                    sql += " " + orderbyInverse2 + " ";
               
            }
 
            return sql;
        }
it