I am working on a ASP.NET web application that tryies to download some files from a remote server by login the server. While I try to download a file it works fine with small files but a It shows following exception while downloading a file of 750 KB.
I m defining the HTTPRequest Timout = System.Threading.Timeout.Infinite;
I m reading the files from server using this code
byte[] buffer = new byte[32768];
using (Stream input = getResponse.GetResponseStream())
{
using (FileStream output = new FileStream(saveTo1, FileMode.OpenOrCreate))
{
int bytesRead;
while ((bytesRead = input.Read(buffer, 0, buffer.Length)) > 0)
{
output.Write(buffer, 0, bytesRead);
}
}
}
What could possible be creating this problem?
Also When I click on
Ignore
orContinue
It continues the download smoothly further. How can I overe this problem?
Thanks in Advance. :)
I am working on a ASP.NET web application that tryies to download some files from a remote server by login the server. While I try to download a file it works fine with small files but a It shows following exception while downloading a file of 750 KB.
I m defining the HTTPRequest Timout = System.Threading.Timeout.Infinite;
I m reading the files from server using this code
byte[] buffer = new byte[32768];
using (Stream input = getResponse.GetResponseStream())
{
using (FileStream output = new FileStream(saveTo1, FileMode.OpenOrCreate))
{
int bytesRead;
while ((bytesRead = input.Read(buffer, 0, buffer.Length)) > 0)
{
output.Write(buffer, 0, bytesRead);
}
}
}
What could possible be creating this problem?
Also When I click on
Ignore
orContinue
It continues the download smoothly further. How can I overe this problem?
Thanks in Advance. :)
Share Improve this question edited Jun 30, 2012 at 8:04 Cheran Shunmugavel 8,4591 gold badge35 silver badges40 bronze badges asked Jun 29, 2012 at 7:30 akhilakhil 1,2123 gold badges22 silver badges43 bronze badges1 Answer
Reset to default 15If you need to handle the timeout exception, you can handle it with javascript. Add this to your page.
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(requestEndHandler );
// This function will handle the end request event
function requestEndHandler(sender, args) {
if( args.get_error() ){
document.getElementById("errorMessageLabel").innerText =
args.get_error().description;
args.set_errorHandled(true);
}
}
</script>
...
<span id="errorMessageLabel"></span>
Also if you want, you can increase AsyncPostBackTimeOut by sdding AsyncPostBackTimeOut="600"//Time
to your script manager.:
<asp:ScriptManager ID="ScriptManager1" runat="server"
AsyncPostBackTimeOut="600" >
</asp:ScriptManager>