2009-06-09 3 views
0

プロダクション環境で標準のタイムアウト例外が発生し、90秒後にスレッドが強制終了されます。私のサイトの大半は問題ではありません。web.configファイルをビューディレクトリに配置する

ただし、私のサイトマップジェネレータはルールの例外です。

これはアプリケーションで作成されたルートに依存するため、プロジェクトからすべてのルートを読み込んでカスタマイズしたHtml.Actionを効果的に使用して各ルートを生成します。

サイトマップ全体を作成するにはかなり時間がかかります(最後のカウントで5分)ので、完了する前にYSODを取得します。さて、location elementを使用してWebフォームでは、私はちょうどディレクトリにweb.configファイルを作成したい、とそのページのちょっといいハンドラ:

<configuration> 
    <location path="sitemapgenerator"> 
    <system.web> 
     <httpRuntime executionTimeout="600" /><!-- Ten minutes --> 
    </system.web> 
    </location> 
</configuration> 

実際にはこの設定ファイルを作成せずに、私は、その確信しますこれはうまくいかないだけでなく、MVCでもかなり悪い習慣です。なぜなら、サイトマップジェネレータの名前を、ルートだけでなく設定ファイルに設定されているものに制限するからです。

私はそれを変更する必要がある場合、ルートと設定ファイルが最新の状態に保たれていることを確認できますが、これはMVCでちょっと混乱しているようです。

誰も私にこのことに関する提案や、このweb.configメソッドがうまくいくかどうかを教えてください。

事前に感謝します。

更新:私はこれについてテストしました。いいえ、うまくいきませんので、代替手段もありません。 :)

答えて

3

サイトマップジェネレータの初期化でscriptTimeoutプロパティを設定しようとしましたか?

Server.ScriptTimeout = 600;

+0

うん、チケットになるよ! :D –

+0

あなたの答えに多くの感謝! –

関連する問題