[C#] PDF Webcomponent save naam aanpassen

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • rickjehh
  • Registratie: Februari 2008
  • Laatst online: 22-09 12:31
Hallo medetweakers,

Ik heb op internet een tijd lang zitten zoeken naar een oplossing voor mijn probleem en ik kan het nergens vinden. Misschien zit ik met verkeerde zoektermen te zoeken, maar misschien weet iemand hier het antwoord op mijn probleem. Ik zit namelijk met het volgende:

Via mijn C# code open ik een PDF bestand in mijn browser. Dit gaat allemaal prima maar als ik op het diskette icoontje klik in de PDF viewer in mijn browser, om het PDF bestand op te slaan, geeft hij als bestandsnaam aan: "naam van de pagina".pdf (bijv. home.pdf). Nu wil ik daar een andere naam hebben, bijv. bestand_20-01-2009.pdf, maar ik kan geen manier vinden om dat aan te passen.

Heeft iemand hier eerder mee te maken gehad misschien?

Alvast bedankt.

Acties:
  • 0 Henk 'm!

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 09:16
Hou output je je file precies in C#?

Anyway kijk hier eens:
http://www.hanselman.com/...BrowsersSaveAsDialog.aspx

Acties:
  • 0 Henk 'm!

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Stuur jezelf even een email met een attachment en bekijk vervolgens even de headers van die attachment. Het aanbieden van bestanden via HTTP werkt op een vergelijkbare manier. De betreffende header is Content-Disposition.

If it isn't broken, fix it until it is..


Acties:
  • 0 Henk 'm!

  • rickjehh
  • Registratie: Februari 2008
  • Laatst online: 22-09 12:31
Niemand_Anders schreef op dinsdag 20 januari 2009 @ 16:21:
Stuur jezelf even een email met een attachment en bekijk vervolgens even de headers van die attachment. Het aanbieden van bestanden via HTTP werkt op een vergelijkbare manier. De betreffende header is Content-Disposition.
Ik had inderdaad al gezocht bij HTTP headers maar kon niet precies vinden welke ik nodig had. Ik denk dat ik er met deze wel uit ga komen! Allebei bedankt voor de feedback.

@Daspeed

Ik gebruik het gratis component PdfSharp om dynamisch een PDF te genereren in mijn C# code waarna ik deze in een MemoryStream opsla om vervolgens in mijn browser te laten zien.

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 22:06

TeeDee

CQB 241

Volgens mij kan je dan nog steeds prima de filename setten, tenminste als ik het stukje van Hanselmann zo begrijp.

[ Voor 31% gewijzigd door TeeDee op 20-01-2009 16:34 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • rickjehh
  • Registratie: Februari 2008
  • Laatst online: 22-09 12:31
Als ik de header: "Content-Disposition: attachment; filename=bestandsnaam.pdf" gebruik, werkt het wel en krijg ik direct een popup om het bestand te openen, op te slaan of annuleren. Dan staat ook de bestandsnaam zoals ik het wil hebben. Als ik echter de andere optie gebruik en ik klik op de diskette om het PDF'je op te slaan, is de bestandsnaam weer hetzelfde als de naam van mijn html pagina.

@TeeDee

Dat zou inderdaad wel moeten werken maar hij houdt vast aan de naam van mijn html pagina als ik het PDF'je via de diskette probeer op te slaan..

[ Voor 12% gewijzigd door rickjehh op 20-01-2009 16:36 ]


Acties:
  • 0 Henk 'm!

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 09:16
welke code hangt er achter de diskette knop?
heb je al getest met een andere browser?

Acties:
  • 0 Henk 'm!

  • rickjehh
  • Registratie: Februari 2008
  • Laatst online: 22-09 12:31
Daspeed schreef op dinsdag 20 januari 2009 @ 16:38:
welke code hangt er achter de diskette knop?
heb je al getest met een andere browser?
Daar kan ik niet bij want hij laadt gewoon Adobe Reader in mijn browser. Op de 1 of andere manier pakt hij de laatst genoemde header in het stukje van Hanselman wel, maar de eerste (degene die ik nodig heb) niet. Misschien is het zo dat op het moment dat het PDF geladen is, je niet meer "echt" naar een webpagina zit te kijken maar gewoon naar Adobe Reader. Dus ik moet misschien eens kijken of ik de bestandsnaam kan zetten voordat Adobe Reader geopend wordt in mijn browser.

[ Voor 7% gewijzigd door rickjehh op 20-01-2009 16:41 ]


Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 22:06

TeeDee

CQB 241

Ah, nu begrijp ik het probleem.

Kort: nee, dat kan niet voor zover ik weet, alleen met een content-disposition richting de client.

[ Voor 7% gewijzigd door TeeDee op 20-01-2009 16:47 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 09:16
Ah nou begrijp ik je (ik d8 dat je het over een webknop had).
Dat kan best wel eens een onhandigs iets zijn van acrobat... Ik meen dat je soms programma's wel eens kon laten trucen met een filename door iets als /bestandsnaam.ext aan de querystring toe te voegen.
Dat zou je nog kunnen proberen (maar ik geef het weinig kans)

Acties:
  • 0 Henk 'm!

  • rickjehh
  • Registratie: Februari 2008
  • Laatst online: 22-09 12:31
Daspeed schreef op dinsdag 20 januari 2009 @ 16:48:
Ah nou begrijp ik je (ik d8 dat je het over een webknop had).
Dat kan best wel eens een onhandigs iets zijn van acrobat... Ik meen dat je soms programma's wel eens kon laten trucen met een filename door iets als /bestandsnaam.ext aan de querystring toe te voegen.
Dat zou je nog kunnen proberen (maar ik geef het weinig kans)
Hmm zonde, nou dan moet de gebruiker zelf maar een bestandsnaam invullen als hij het PDF'je wil opslaan. Iig bedankt voor jullie input! Deze kan dus op slot nu :)
Pagina: 1