2017-04-12 1 views
0

Comme je vois l'objet PdfReader d'itextsharp accepte un nom de fichier. Mais j'ai HttpPostedFileBase dans mon contrôleur, comment puis-je donner HttpPostedFileBase à PdfReader. Voici le code:Comment donner à PdfReader un HttpPostedFileBase

public ActionResult Index(HttpPostedFileBase file) 
    { 

     PdfReader myReader = new PdfReader(file); // this gives error. 
+0

Détails de l'erreur s'il vous plaît? –

+0

Erreur est PdfReader accepte la chaîne pas HttpPostedFileBase – jason

+2

Votre commentaire est incomplet. 'PdfReader' accepte aussi un' byte [] ',' InputStream', et ainsi de suite. –

Répondre

2

Compte tenu d'un HttpPostedFileBase nommé file, alors vous pouvez le faire:

byte[] pdfbytes = null; 
BinaryReader rdr = new BinaryReader(file.InputStream); 
pdfbytes = rdr.ReadBytes((int)file.ContentLength); 
PdfReader reader = new PdfReader(pdfbytes); 

Vous pouvez, bien sûr, d'abord enregistrer le PDF à un fichier, puis fournissez le chemin à ce fichier, mais habituellement, ce n'est pas ce que vous voulez.

+0

Comment puis-je faire ce que vous avez dit? Merci. – jason

+0

Je ne comprends pas la question. N'ai-je pas simplement fourni le code source? –