使用ASP.net C#的网格视图输出数据集的最简单方法是什么?

时间:2013-10-31 01:30:47

标签: c# mysql asp.net

我想将我的MySQL查询输出到一个充满表格的li标签我的select语句正在工作,我只是使用来自MySQL世界城市的示例数据库,我的问题是访问单个行和列的最简单方法是什么?我应该创建一个新的类或结构来推送数据吗?我希望能够将数据表转换为类似于HashTables的列表吗?我应该使用像JSON.net这样的东西吗?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;
using Newtonsoft.Json;

namespace MySQL
{
    public partial class _default : System.Web.UI.Page
    {
        string connStr = "server=localhost;User Id=root;Persist Security Info=True;database=world; Password=root";
        MySqlDataAdapter countries;
        DataSet ds;

        protected void Page_Load(object sender, EventArgs e)
        {

            MySqlConnection conn = new MySqlConnection(connStr);
            string sql = "SELECT * FROM country";
            countries = new MySqlDataAdapter(sql, conn);
            MySqlCommandBuilder cb = new MySqlCommandBuilder(countries);

            ds = new DataSet();
            countries.Fill(ds, "Country");

        }
    }
}

我非常精通jquery,javascript,angularjs,我不关心html输出,但我想知道最简单的访问各列的方法是什么?和行输出?

1 个答案:

答案 0 :(得分:1)

我认为您希望按行和列访问所有表。

这样做

 MySqlConnection conn = new MySqlConnection(connStr);
      string sql = "SELECT * FROM country";
      countries = new MySqlDataAdapter(sql, conn);
      MySqlCommandBuilder cb = new MySqlCommandBuilder(countries);

      ds = new DataSet();
      countries.Fill(ds, "Country");
      DataTable dt;
      for (int i = 0; i <ds.Tables.Count; i++)//traverse by each table in dataset
      {
           dt = ds.Tables[i];

           for (int j = 0; j < dt.Rows.Count; j++)//traverse by row
           {
                Response.Write("Current Row--> "+j.ToString()+Environment.NewLine);
                object[] ob = dt.Rows[j].ItemArray; // get array of column from present row
                for (int k = 0; k <= ob.GetUpperBound(0); k++)
                {
                     Response.Write("Current column Number--> "+k.ToString()+" Value = "+ob[k].ToString()+Environment.NewLine);
                }
           }

      }