我无法将大型excel文件上传到asp.net中的sql中 [英] I could not able upload large excel file into sql in asp.net

查看:72
本文介绍了我无法将大型excel文件上传到asp.net中的sql中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个22 MB的excel文件..我需要从asp.net页面上载它.
我使用了下面的代码.但是当文件较大时,它不起作用

I have a 22 MB excel file .. i need to upload it from asp.net page.
I have used the below code.. But it is not working when file size is larger

uploadfile = fileuploadExcel.PostedFile.FileName;
            filename = Path.GetFileName(uploadfile);
            extension = Path.GetExtension(uploadfile);
            String fname, spath;
            spath = Server.MapPath(@"ExcelFile/" + filename);
            fname = filename;
            if (System.IO.File.Exists(fname))
            {
                System.IO.File.Delete(fname);
                fileuploadExcel.SaveAs(spath);
            }
            else
            {
                fileuploadExcel.SaveAs(spath);
            }
            path = fileuploadExcel.PostedFile.FileName;
            excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + path + ";" + "Extended Properties=Excel 8.0;";
            excelConnection = new OleDbConnection(excelConnectionString);
            OleDbCommand cmd = new OleDbCommand("Select * from [Sheet4$]", excelConnection);
            excelConnection.Open();
            OleDbDataReader dReader;
            dReader = cmd.ExecuteReader();
            SqlBulkCopy sqlBulk = new SqlBulkCopy(connectionstring);
            sqlBulk.DestinationTableName="Rawdata";
            sqlBulk.WriteToServer(dReader);
            excelConnection.Close();
            excelConnection.Dispose();



请建议我/共享代码



please suggest me/share the code

推荐答案

",excelConnection); excelConnection.Open(); OleDbDataReader dReader; dReader = cmd.ExecuteReader(); SqlBulkCopy sqlBulk = SqlBulkCopy(connectionstring); sqlBulk.DestinationTableName = " ; sqlBulk.WriteToServer(dReader); excelConnection.Close(); excelConnection.Dispose();
", excelConnection); excelConnection.Open(); OleDbDataReader dReader; dReader = cmd.ExecuteReader(); SqlBulkCopy sqlBulk = new SqlBulkCopy(connectionstring); sqlBulk.DestinationTableName="Rawdata"; sqlBulk.WriteToServer(dReader); excelConnection.Close(); excelConnection.Dispose();



请建议我/共享代码



please suggest me/share the code


您可以通过修改Web.Config文件来增加限制.属性"maxRequestLength"描述了此功能.

maxRequestLength :属性表示ASP.NET支持的最大文件上传大小.指定的大小以千字节为单位.默认值为"4096"(4 MB).

示例:
You can increase the limit by modify the Web.Config file. The attribute "maxRequestLength" describes this feature.

maxRequestLength:Attribute indicates the maximum file upload size supported by ASP.NET.The size specified is in kilobytes. The default is "4096" (4 MB).

Example:
<system.web>
  <httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>


这篇关于我无法将大型excel文件上传到asp.net中的sql中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆