2

私が取り組んでいるこのプロジェクトのデータを入力しようとすると問題が発生します。GridViewsクエリからの 3 つのデータ セットで埋めたいものが 3 つあります。以下のコードは、3 つのグリッドのみを生成します。それらはすべて 3 番目のセットを複製しています。

私がやろうとしているのは、最初のセットを取得して最初のグリッドに配置し、2 番目のセットを取得して 2 番目のグリッドに配置し、3 番目のセットを 3 番目のグリッドに配置することです。

最後のセットだけを取得する理由がわかりません。アダプター方式と関係があると思いますか?

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        DataTable dt2 = new DataTable();
        DataTable dt3 = new DataTable();
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ISALog1ConnectionString"].ToString());
        SqlCommand cmd = new SqlCommand("exec ProxyReport", conn);
        cmd.CommandTimeout = 200;
        SqlDataAdapter ad = new SqlDataAdapter(cmd);
        ad.Fill(dt);
        ad.Fill(dt2);
        ad.Fill(dt3);

        GridView1.DataSource = dt;
        GridView1.DataBind();
        GridView2.DataSource = dt2;
        GridView2.DataBind();
        GridView3.DataSource = dt3;
        GridView3.DataBind();
    }
}

これが得られるものです。一番下の最後のセットを取得し、それを 3 回複製します。コードが同じことを行うのは理解していますが、それが重複する理由ですが、最初のセットや中間のセットではなく、なぜ 3 番目のセットなのですか? 最初のグリッドに最初のセットを持たせ、2 番目のグリッドに 2 番目のセットを持たせるにはどうすればよいですか?

ここに画像の説明を入力

4

1 に答える 1

1

データセットを試して、データセットからデータテーブルを取得します。

DataSet dataSet = new DataSet();
SqlDataAdapter ad = new SqlDataAdapter(cmd);
        ad.Fill(dataSet);

        GridView1.DataSource = dataset.Tables[0];
        GridView1.DataBind();
        GridView2.DataSource = dataset.Tables[1];
        GridView2.DataBind();
        GridView3.DataSource = dataset.Tables[2];
        GridView3.DataBind();
于 2012-07-02T19:25:57.040 に答える