Anomalie sur lien download PDF

Résolu
scilaci Messages postés 5 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 13 janvier 2009 - 13 janv. 2009 à 15:58
scilaci Messages postés 5 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 13 janvier 2009 - 14 janv. 2009 à 10:47
Bonjour,
J'ai une petite anomalie dans mon projet que je n'arrive pas à résoudre.

Dans une page aspx, je charge plusieurs liens (dynamiquement) utile pour le téléchargement de fichier de type PDF.
J'ut'ilise pour cela un fichier ashx (handler) pour fournir le path de chaque fichier PDF à ma page.

Lorsque j'affiche ma page aspx et que je clique sur le lien du pdf à télécharger tout se passe très bien.
J'arrive à faire un "Save file as" ou un "Open file". jusque la tout vas bien.
Mais par la suite, lorsque je clique sur un autre lien qui n'a rien avoir avec le téléchargement de PDF, L'application m'affiche à nouveau le dialog box du fichier PDF  précédemment ouvert.

Si vous avez une petite idée, d'où pourrait venir le problème.

Merci pour vos future réponse.

3 réponses

GillouXman Messages postés 561 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 10 juin 2010
14 janv. 2009 à 10:01
je me demande si ce n'est pas  à cause du postback

essaie une fois avec un hyperlink
 
Dim h as HyperLink = new HyperLink
h.NavigateUrl = "addingFileLink.ashx?Lnk="
& liens &
"&Name="
3
scilaci Messages postés 5 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 13 janvier 2009
14 janv. 2009 à 09:37
Un petit UP.

Voilà le code coté de mon fichier ashx (httpHandler)
<hr />Public Class
addingFileLink
Implements
IHttpHandler

Public
Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest

If
context.Request.QueryString("Lnk") IsNotNothingAnd context.Request.QueryString("Name") IsNotNothing Then

context.Response.AppendHeader("content-disposition"
, "attachment;filename=" & context.Request.QueryString("Name"))
context.Response.ContentType = "application/pdf"

context.Response.BufferOutput = False

context.Response.TransmitFile(context.Request.QueryString("Lnk"
))
context.Response.Flush()

context.Response.Close()

context.Response.End()

End
If

End
Sub

Public
ReadOnlyProperty IsReusable() AsBooleanImplements IHttpHandler.IsReusable
Get

Return
False

End
Get
End
Property

EndClass

<hr />Code coté page aspx lors de la création des liens:
<hr />
Dim

lnkDownloadArticle
As
New LinkButton
lnkDownloadArticle.CssClass =
"downloadPDF"
lnkDownloadArticle.Text = "test"
lnkDownloadArticle.ID =
"lnkDownloadPDF_" & cptDownPDF
lnkDownloadArticle.PostBackUrl =
"addingFileLink.ashx?Lnk=" & liens &
"&Name=" & Name
<hr />
J'èspère que j'aurais plus de chance au niveau des réponses.
0
scilaci Messages postés 5 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 13 janvier 2009
14 janv. 2009 à 10:47
Un grand merci pour ta réponse.

C'étais bien le malheureux postback
Voila les changement que j'ai apporté a mon code:<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>







<hr align="center" width="100%" size="2" />




'Dim lnkDownloadArticle AsNew LinkButton

Dim
LnkDownloadArticle
As


New

HyperLink



lnkDownloadArticle.CssClass = "downloadPDF"
lnkDownloadArticle.Text = "test"
lnkDownloadArticle.ID = "lnkDownloadPDF_" & cptDownPDF
'lnkDownloadArticle.PostBackUrl = "addingFileLink.ashx?Lnk=" & liens & "&Name=" & Name
LnkDownloadArticle.NavigateUrl = "addingFileLink.ashx?Lnk=" & liens & "&Name=" & Name







<hr align="center" width="100%" size="2" />






Comme quoi faut pas grand chose pour pété un câble.

Encore merci.

Ps: Si tu as une petite explication simple du phénomène qui c'est présenté, pour que je comprenne mieux, je suis preneur.
0
Rejoignez-nous