Member 12617709 Ответов: 1

Кто-нибудь подскажет мне, как загрузить лист excel в ASP.NET (вид сетки) с помощью нажатия кнопки?


    string FilePath = ConfigurationManager.AppSettings["FilePath"].ToString();
    string filename = string.Empty;
    if (FileUploadToServer.HasFile)
    {
        try
        {
            string[] allowdFile = { ".xls", ".xlsx" };
            string FileExt = System.IO.Path.GetExtension(FileUploadToServer.PostedFile.FileName);
            bool isValidFile = allowdFile.Contains(FileExt);
            if (!isValidFile)
            {
                lblMsg.ForeColor = System.Drawing.Color.Red;
                lblMsg.Text = "Please upload only Excel";
            }
            else
            {
                int FileSize = FileUploadToServer.PostedFile.ContentLength;
                if (FileSize <= 1048576)
                {
                    filename = Path.GetFileName(Server.MapPath(FileUploadToServer.FileName));

                    FileUploadToServer.SaveAs(Server.MapPath(FilePath) + filename);
                    string filePath = Server.MapPath(FilePath) + filename;
                    OleDbConnection con = null;
                    if (FileExt == ".xls")
                    {
                        con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties=Excel 8.0;");

                    }
                    else if (FileExt == ".xlsx")
                    {
                        con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + ";Extended Properties=Excel 12.0;");
                    }
                    con.Open();
                    DataTable dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);

                    string getExcelSheetName = dt.Rows[0]["Table_Name"].ToString();
                    OleDbCommand ExcelCommand = new OleDbCommand(@"SELECT * FROM [" + getExcelSheetName + @"]", con);
                    OleDbDataAdapter ExcelAdapter = new OleDbDataAdapter(ExcelCommand);
                    DataSet ExcelDataSet = new DataSet();
                    ExcelAdapter.Fill(ExcelDataSet);
                    con.Close();

                    GridView1.DataSource = ExcelDataSet;
                    GridView1.DataBind();
                }
                else
                {
                    lblMsg.Text = "Attachment file size should not be greater then 1 MB!";
                }
            }
        }
        catch (Exception ex)
        {
            lblMsg.Text = "Error occurred while uploading a file: " + ex.Message;
        }
    }
    else
    {
        lblMsg.Text = "Please select a file to upload.";
    }
}


Что я уже пробовал:

Мне не нужен этот код.Дайте мне амни простые коды.Потому что я не очень хорош в программах

1 Ответов

Рейтинг:
0