2010-04-08 7 views
1

Je veux avoir mes fichiers PDF envoyés ainsi à mes utilisateurs:Comment créer un itinéraire qui capture tous les fichiers PDF?

public ActionResult GetPDF(string filename) 
{ 
    return File(filename, "application/pdf", Server.HtmlEncode(filename)); 
} 

Mais je ne sais pas comment créer un itinéraire qui va attraper tous les différents fichier pdf dans mon site?

Merci beaucoup pour votre aide!

+0

Comment avez-vous Vous voulez que les URL de ces PDF ressemblent? –

+0

www.website.com/anything/anything/filenam.pdf mais il peut être imbriqué à plusieurs niveaux de mon site web puisque l'utilisateur peut mettre un PDF sur n'importe quelle page du CMS. – VinnyG

+0

Quelqu'un a une idée? C'est possible? – VinnyG

Répondre

0

Try this ..

string FilePath = MapPath("your.pdf"); 
Response.ContentType = "Application/pdf"; 
Response.AppendHeader("content-disposition", "attachment; filename=" + FilePath); 
Response.WriteFile(FilePath); 
Response.End(); 

EDIT:

juste vu ce Oups est MVC ...

Essayez d'ajouter l'en-tête de toute façon avant de retourner ...

+0

Il travaille, j'ai simplement ajouté l'en-tête de disposition de contenu dans mon PDFDownloadHandler comme celui-ci chaîne public override GetRequestedFileMimeType (contexte HttpContext) { de context.Response.AppendHeader ("content-disposition", "pièce jointe; filename =" + contexte .Request.PhysicalPath); return "application/pdf"; } – VinnyG

+0

merci pour le partage –

0

J'ai trouvé un moyen de faire ce que je voulais faire de lire ce lien: http://forums.iis.net/t/1162518.aspx ou celui http://dotnetslackers.com/articles/aspnet/Range-Specific-Requests-in-ASP-NET.aspx

Ce n'est pas en acheminant mais avec un gestionnaire dans IIS.

Si quelqu'un a une meilleure solution, s'il vous plaît, laissez-moi savoir :)

EDIT:

Il est vraiment ne fonctionne pas très bien, vous pouvez jeter un coup d'oeil ici: http://www.ville.st-augustin.qc.ca/carte-interactive cliquez sur l'onglet "carte de zonage" et puis sur n'importe quelle icône Adobe et ça ne fonctionne pas comme il se doit ... toute aide appréciée!

Questions connexes