0

ユーザーが Excel シート (.xlsx) でデータをアップロードしようとすると、このエラーが発生します。それは永続的な問題ではありません。私はこの問題を週に一度のように受け取っていました。しかし、今日は頻繁に起こっています。

    private void ExportToExcelOpenOffice(DataTable dataDump)
    {

        long? empUserId = null;
        bool showTeamData = false;

        if (this.IsUserEntryValid())
        {
            if (CurrentUser.Details.UserType == UserType.User)
            {
                empUserId = CurrentUser.Details.EmployeeUserId;
                showTeamData = true;
            }

            if (dataDump.IsValid(true))
            {
                // ExcelHelper.ToExcel(dataDump, "ELogger_DataDump.xls", this.Response);
                // RichExcelHelper.ToExcel(dataDump, "ELogger_DataDump.xls", this.Response);

                using (ExcelPackage pck = new ExcelPackage())
                {
                    ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Page 1");
                    ws.Cells["A1"].LoadFromDataTable(dataDump, true);

                    //Write it back to the client
                    Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                    Response.AddHeader("content-disposition", "attachment;  filename=ELogger_DataDump.xlsx");
                    Response.BinaryWrite(pck.GetAsByteArray());
                    Response.Flush();
                    Response.End();
                }

            }
            else
            {
                lblMessage.Visible = true;
                lblMessage.Text = "No records found.";
            }
        }
        else
        {
            lblMessage.Visible = true;
            lblMessage.Text = this.errorMessage;
        }
    }
4

1 に答える 1

0

さて、同様の問題についてここに到達する人がいるように。はっきりさせておきますが、上記の規範には何の問題もありませんでした。SQLストアドプロシージャを最適化しました。私がしたことの1つは、パフォーマンスを向上させる特定の列に非クラスター化インデックスを追加したことです。

ストアドプロシージャでは、その他のビジネス要件に関連する変更もほとんど行われませんでした。
要約すると、クエリを最適化することでうまくいきました。

于 2013-03-02T20:10:24.217 に答える