bftarane
شنبه 08 تیر 1392, 20: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 میکنه بازم یکی به تعداد دانلودها اضافه میشه.
چطور میشه این مشکل رو حل کرد؟
ممنون
من از کد زیر برای دانلود فایل استفاده کردم
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 میکنه بازم یکی به تعداد دانلودها اضافه میشه.
چطور میشه این مشکل رو حل کرد؟
ممنون