1

動的に作成されたテーブルを持つ UpdatePanel があり、セーブ ストリームを EPPlus の Excel 関数として使用しようとしています。SaveToExcel()ただし、メソッドを呼び出すとエラーが発生し続けます。

空のWebサイトにある場合、このメソッドは正常に機能するため、ポストバック/ UpdatePanelと関係があると思います.

エラー:

Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed.

[動的]からのエラーの原因となっているコード:

function Sys$WebForms$PageRequestManager$_endPostBack(error, executor, data) {
        if (this._request === executor.get_webRequest()) {
            this._processingRequest = false;
            this._additionalInput = null;
            this._request = null;
        }
        var handler = this._get_eventHandlerList().getHandler("endRequest");
        var errorHandled = false;
        if (handler) {
            var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, data ? data.dataItems : {}, executor);
            handler(this, eventArgs);
            errorHandled = eventArgs.get_errorHandled();
        }
        if (error && !errorHandled) {
            throw error;
        }
    }

これが私の方法を終了SaveToExcel()する方法です:

Response.Clear();
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;  filename=Bulk Swap HDDs.xlsx");
package.SaveAs(Response.OutputStream);
Response.End();

私が見逃していることは本当に明らかですか?SaveToExcelを別の aspx ページに配置してを実行するPostBackUrl="~/SaveToExcel.aspx"と、正常に動作します (ただし、送信ボタンがクラッシュします)。

4

0 に答える 0