导出页面表中数据到Excel中解决办法

导出页面表中数据到Excel中
   项目中遇到了一个这样的问题,业务处理大概是这样的,根据需求在页面选择相应字段(数据库中的列),然后点击生成数据,会将选择的字段生成一个表(有分页),然后点击导出数据,将这个表中的数据导入Excel中去,如果选择的字段比较少,并且数据只有几千条的话,导出数据是没问题的,但是如果选择的字段很多,并且生成的数据有几万以上的话,有时候不能导出数据程序就终止了,或者速度很慢,我弄了好久还是不明白,应该怎样解决?请各位指导一下!我用的Sql Server 2008 R2,大概代码如下:
    //导出按钮
        $("#btnExportToExcel").click(function () {
            $("#spanConfirmContent").text("确定导出到Excel吗?");
            //弹出设置对话框
            $("#dialog-confirm").dialog({
                resizable: false,
                height: 150,
                width: 200,
                modal: true,
                title: '自定义导出',
                buttons: {
                    "确定": function () {
                        ExportToExcel(TableSql,500);
                        $(this).dialog("close");
                    },
                    "取消": function () {
                        $(this).dialog("close");
                    }
                }
            });



 function ExportToExcel(TableSql, Number1Time) {
        var FileName = Crowd + GetNowString();
        myAlertMessage("正在导出数据...",false);      

       var ExportNumber = RecordCount; //生成队列用的记录数量
       var ExportNumberInFact = 0; //实际导出记录数量
       var Number1TimeInFact = 0; //每次导出数量
       var SpareNumber = RecordCount % Number1Time;//最后的剩余记录数
      
       ExportNumber -= SpareNumber;
       Number1TimeInFact = SpareNumber;
       while (ExportNumber >= 0) {
           Number1TimeInFact = Number1Time;
           $(document).queue("ajaxRequests", function (i, j, k) {