我的电脑是win7系统,开发环境是 VS2010,framework2.0 。写了一个需要C#读取XML的软件,在win7电脑上运行很快,可是放到XP的电脑上却很慢,求解释。我写的读取那部分的代码是
 private void submit_Click(object sender,EventArgs e) 
        {
            DataSet xmldataset = new DataSet();
            xmldataset.ReadXml("D:/content.xml");
            int i=0;            String person1 = xmldataset.Tables["person"].Rows[0]["id"].ToString();
            while(person1!=null){
                if(person1==numtext.Text){
                    try { 
                        System.Diagnostics.Process.Start(@"D:\" + xmldataset.Tables["person"].Rows[i]["name"].ToString());
                    }catch(Exception ex)
                    {
                        MessageBox.Show("没有对应的文件夹");
                    }
                    break;
                }
                i++;
                person1 = xmldataset.Tables["person"].Rows[i]["id"].ToString();
            }

解决方案 »

  1.   

    两台电脑配置差别有多大?再有你循环System.Diagnostics.Process.Start的是些什么程序?开很多进程跟电脑配置关系很大...
      

  2.   

    只运行一次System.Diagnostics.Process.Start啊,就是为了打开查找的文件夹。两台电脑配置差距是比较大
      

  3.   

    可这也不应该是主要原因吧,是什么环节慢的啊,单单的运行winform那台电脑一点问题也没有
      

  4.   

    你把那段if块注释掉看看差距有多大...还要看content.xml文件有多大...你用DataSet把它全部载入内存,如果文件比较大配置差的电脑不慢才怪...
      

  5.   

    。不知道还有没什么可以代替XML