1

Excelから大量のデータ(100.000行など)をインポートしており、必要な値をExcelから取得しています(約1分かかりました)

次に、これらのレコード内でループし、いくつかのデータベースの挿入/更新ステートメントを実行します。しかし、約 90 秒後に応答が停止します。私のページは停止しますが、バックグラウンドでデータベースが続行され、挿入/更新ジョブが実行されます。

しかし、応答が終了(タイムアウト)しているため、ユーザーにフィードバック(プロセスが完了したなど)を与えることはできません。

web.config でタイムアウトを増やしてみました。

<httpRuntime maxRequestLength="10240" executionTimeout="36000"/>

また、次のようにその特定のページの executionTimeout を増やしてみます。

<location path="HomePage.aspx"> <!--Excel import takes too long-->
  <system.web>
    <httpRuntime executionTimeout="360000" maxUrlLength="10000" maxQueryStringLength="80000" maxRequestLength="10240" />
  </system.web>  
</location>

彼らはうまくいきませんでした!助言がありますか?

4

3 に答える 3

2

protected void Page_Load(object sender, EventArgs e) { ScriptManager.GetCurrent(this.Page).AsyncPostBackTimeout = 6000;

AsyncPostBackTimeout を 6000 に増やしたところ、これでうまくいきました。私のlinkbutton(長いプロセス)はUpdatePanelにありました

于 2013-04-02T14:53:48.630 に答える
1

この方法を試してください

<configuration>
  <system.web>
  ...
   <sessionState timeout="90" />
  ...
 </system.web>
</configuration>

これを見る

http://asp-net.vexedlogic.com/2012/05/23/aspasp-net-session-timeout-how-do-i-change-it/

http://forums.asp.net/t/1040377.aspx/1

于 2013-04-01T11:19:40.967 に答える