gridview太慢了12000条记录

时间:2014-04-16 13:48:43

标签: c# asp.net performance web-services gridview

我有一个干净的gridview,我填充在page_load中。这是我填充网格的代码。

private void populateGrid()
    {
        test.RH_WebServiceService ligar = new test.RH_WebService();
        test.listaBasePes[] dados = ligar.getAllDadosBase();

            DataTable dt = new DataTable();
            DataColumn dCol1 = new DataColumn("numer", typeof(System.String));
            DataColumn dCol2 = new DataColumn("name", typeof(System.String));
            DataColumn dCol3 = new DataColumn("quadro", typeof(System.String));
            DataColumn dCol4 = new DataColumn("class", typeof(System.String));
            dt.Columns.Add(dCol1);
            dt.Columns.Add(dCol2);
            dt.Columns.Add(dCol3);
            dt.Columns.Add(dCol4);

            for (int i = 0; i <= dados.Length; i++)
            {
                test.desQuadro[] cargo = ligar.getDesQuadro(dados[i].quadro);
                test.desClasse[] classe = ligar.getDesClasse(dados[i].classe);
                DataRow row = dt.NewRow();
                row[dCol1] = dados[i].nii;
                row[dCol2] = dados[i].nome;
                row[dCol3] = cargo[0].desquadro;
                row[dCol4] = classe[0].desclasse;
                dt.Rows.Add(row);
            }

            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
    }

我在上面的代码中做的是:我正在咨询一个Web服务,以获取12000条记录中的所有数据,然后我抓取字段quadro和classe(这些是id),并使用它们来咨询另一个webservice,这将给出我的名字而不是IDS。然后我将它保存到数据表中以便以后绑定到gridview。

我尝试过激活分页,但这并不重要,因为每次更改页面时,gridviews附带的分页都会加载每条记录。

我真的不知道我是否正确解释了自己,因为英语不是我的主要语言。 现在要离开,但稍后会在这里通过检查一些答案。

编辑:我的目标是尝试加快页面加载,因为加载需要很长时间

0 个答案:

没有答案