2012-04-27 13 views
8

मैं एक ASP.NET http हैंडलर को लागू किया है करता है। ऐसा लगता है कि टाइमआउट सेट करने का कोई तरीका नहीं है उदा। यदि हैंडलर एक्स सेकंड से अधिक समय तक चल रहा है तो परिणाम न दें।एक ASP.NET HttpHandler कभी वे समय बाह्य

हूँ मैं यहाँ सही या वहाँ एक ashx हैंडलर के लिए समय समाप्त प्राप्त करने के लिए एक तरीका है?

उत्तर

15

ASP.Net एक टाइमआउट कि यह कॉन्फ़िगर किया गया सीमा से अधिक एक कनेक्शन को मारने के लिए कारण होगा में बनाया गया है।

The default is 110 seconds.

<system.web> 
    <httpRuntime executionTimeout="110">   
</system.web> 

हालांकि, इस विकलांग जब डिबग मोड में संकलित है।

<!-- Execution Timeout Will Not Be Enforced --> 
<compilation debug="true" /> 

आप एक विशिष्ट हैंडलर के लिए एक निष्पादन समय समाप्ति निर्धारित करने की आवश्यकता है, तो आप हमेशा एक स्थान विशेष रूप से है कि हैंडलर के लिए बनाते हैं, और वहाँ समय समाप्ति सेट कर सकते हैं।

<location path="MyHandler.ashx"> 
    <system.web> 
    <!-- Set execution timeout to 10 minutes --> 
    <httpRuntime executionTimeout="600"/> 
    </system.web> 
</location>