PDA

View Full Version : سوال: با کنسل کردن دانلود به تعداد دانلودها اضافه نشه



bftarane
شنبه 08 تیر 1392, 19:50 عصر
سلام.
من از کد زیر برای دانلود فایل استفاده کردم

protected void imgdwn_Click(object sender, ImageClickEventArgs e)
{

try
{
if (frm.CurrentMode == FormViewMode.ReadOnly)
{
Label lbl = (Label)frm.FindControl("lblpath");
string strURL = lbl.Text;
WebClient req = new WebClient();
HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.ClearContent();
response.ClearHeaders();
response.Buffer = true;
response.ContentType = ContentType;
response.AddHeader("Content-Disposition", "attachment;filename=\"" + Path.GetFileName(strURL) + "\"");
byte[] data = req.DownloadData(Server.MapPath(strURL));
response.BinaryWrite(data);

.................................................. .................................................. ....
MyDALBase.ExecuteNoneQuery(System.Data.CommandType .StoredProcedure, "updateDlCount", new SqlParameter[]{
new SqlParameter("@Id",Request.QueryString["Id"])
});
.................................................. .................................................. ....


response.End();
}


}
catch (Exception ex)
{
throw ex;
}


}
و اون کدی که بین نقطه چین قرار دادم میاد و وقتی روی دکمه دانلود کلیک میشه فیلد DlCount که برای شمردن تعداد دانلودها در جدول در نظر گرفتم رو یه دونه افزایش میده. مشکلم الآن اینه که حتی وقتی کاربر دانلود رو Cancel میکنه بازم یکی به تعداد دانلودها اضافه میشه.
چطور میشه این مشکل رو حل کرد؟
ممنون

Bojbaj
شنبه 08 تیر 1392, 21:50 عصر
دیگه بعد از ارسال فایل برای دانلود که فکر کنم نمیشه تشخیص داد.
ولی یه راه هست که فایل رو توی بسته های کوچک بفرستی برای دانلود و آخرش چک کنی چند بسته دریافت شده.
البته خودم عملا هیچ وقت امتحان نکردم ولی فکر کنم جواب میده :
http://www.codeproject.com/Articles/74654/File-Download-in-ASP-NET-and-Tracking-the-Status-o

bftarane
شنبه 08 تیر 1392, 22:36 عصر
خوشحال میشم اگه کس دیگه ای هم نظری داره در این مورد بشنوم.