View Full Version : لینک دانلود در Repeater
mohsen_zelzela00
سه شنبه 04 خرداد 1389, 08:46 صبح
با سلام
من یه سایتی دارم طراحی می کنم که مدیر سایت یک سری فایل pdf در سایت Upload می کنه و کاربران می تونن اون فایل ها رو دانلود کنن
حالا مشکل من اینه که وقتی دارم لیست فایل ها رو با استفاده از Repeater نشون می دم نمی تونم لینک اونوها رو برای دانلود بزارم
ممنون میشم دوستان راهنمایی کنند
Alireza Orumand
سه شنبه 04 خرداد 1389, 08:52 صبح
مشکلتون با گذاشتن لینک دنلود چیه؟
یه لینک معمولیه دیگه!
از HttpModule هم برای صحت دسترسی میتونید استفاده کنید.
mohsen_zelzela00
سه شنبه 04 خرداد 1389, 09:08 صبح
مشکلتون با گذاشتن لینک دنلود چیه؟
یه لینک معمولیه دیگه!
از HttpModule هم برای صحت دسترسی میتونید استفاده کنید.
دوست عزیز منظورم از لینک اینه که یک دکمه قرار بدم که وقتی کاربر بر روی اون کلیک کرد اون فایل دانلود بشه خب قاعدتاً ما مسیر فایل رو هم از database خوندیم و می تونونیم باهاش کار کنم ولی وقتی برای خاصیت onclick یکbutton قرار می دم خطا گرفته میشه
دوست عزیز میشه در مورد HttpModule بیشتر توضیح بدید و یه مثال بزنید
ممنونم
hossein_s
سه شنبه 04 خرداد 1389, 09:12 صبح
چرا از hyperlink بجاي button استفاده نمي كنيد؟!
mohsen_zelzela00
سه شنبه 04 خرداد 1389, 09:18 صبح
چرا از hyperlink بجاي button استفاده نمي كنيد؟!
دوست عزیز استفاده کردم ولی نمی دونم چرا جواب نمیده
mohsen_zelzela00
سه شنبه 04 خرداد 1389, 09:26 صبح
چرا از hyperlink بجاي button استفاده نمي كنيد؟!
من کدم رو به این صورت نوشتم
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:Literal ID="lit1" Text='<%#Eval("Discription") %>' runat="server"></asp:Literal>
<br />
<hr />
<asp:Literal ID="Literal1" Text='<%#Eval("Attech_File") %>' runat="server"></asp:Literal>
<br />
<hr />
<asp:HyperLink ID="HyperLink1" NavigateUrl='<%#Eval("Attech_File") %>' runat="server">دانلود</asp:HyperLink>
<br />
<hr />
</ItemTemplate>
</asp:Repeater>
ولی خطای زیر رو میده
Firefox doesn't know how to open this address, because the protocol (e) isn't associated with any program.
hossein_s
سه شنبه 04 خرداد 1389, 11:34 صبح
بجاي Eval از Bind استفاده كنيد شايد درست شد!
PhoenixNet
سه شنبه 04 خرداد 1389, 11:52 صبح
سلام
خوبه یه نگاهی به سورس HTML صفحه که در مرورگر نمایش داده نگاه کنی.احتمالا مشکل آدرس دهی داری.
mohsen_zelzela00
سه شنبه 04 خرداد 1389, 12:15 عصر
سلام
خوبه یه نگاهی به سورس HTML صفحه که در مرورگر نمایش داده نگاه کنی.احتمالا مشکل آدرس دهی داری.
بجاي Eval از Bind استفاده كنيد شايد درست شد!
نه دوستان مشکل رو متوجه شدم باید به صورت زیر عمل میکردم
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="false" CommandArgument='<%# Eval("Attech_File")%>'
OnClick="OpenPDF">OpenPDF</asp:LinkButton>
و تابع OpenPdf
protected void OpenPDF(object sender, EventArgs e)
{
LinkButton lnk = (LinkButton)sender;
if (lnk != null)
{
Response.AddHeader("content-disposition", "attachment; filename=" + lnk.CommandArgument + ".pdf");
Response.WriteFile(Server.MapPath("~/File/" + lnk.CommandArgument.ToString() ));
Response.End();
}
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.