bueno asp.net tiene un metodo llamado response.transmitfile
lo cual uno envia el archivo atravez de un response. lo cual funciona para grandes descargas.
y no son redicionados a una url donde esta el archivo
este seria el codigo.
aca el codigo
string file = Request.Params["file"];
if (!string.IsNullOrEmpty(file))
{
file = Path.Combine(Server.MapPath("downloadsx"), Path.GetFileName(file));
Response.Clear();
Response.ContentType = "application/octect-stream";
Response.AddHeader("Content–Disposition", "attachment; filename=foo.xyz");
Response.TransmitFile(file);
Response.End();
}
pd:una vez en windows 2003 se me cortaba el enviado archivo misteriosamente lo cual lo solucione bajando un parche.
/////////////////////////////////////////////////////////