2012-12-12 10 views
0

J'essaye d'ouvrir un fichier Excel que j'ai écrit en utilisant epplus.Ouverture d'Excel en utilisant EPPlus

Je l'ouvre en utilisant ceci et cela fonctionne dans le serveur de développement mais pas après l'avoir publié.

System.Diagnostics.Process.Start(Server.MapPath("~\chart.xlsx")) 

Comment puis-je ouvrir cette feuille Excel?

Répondre

4

Votre code tente d'ouvrir le fichier Excel sur le serveur. Même si vous avez installé Excel sur le serveur, il n'y aura probablement personne assis devant le serveur pour le voir.

Je suppose que vous voulez ouvrir le fichier sur le client:

Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" 
Response.AppendHeader("Content-Disposition", "attachment;filename=chart.xlsx") 
Response.WriteFile(Server.MapPath("~/chart.xlsx")) 
Response.End() 

Vous devez aussi garder à l'esprit qu'il pourrait y avoir plusieurs utilisateurs accédant à votre application en même temps. Si vous générez dynamiquement le fichier chart.xlsx, le fichier correspondant à une requête peut remplacer le fichier pour une autre requête. Il serait préférable de sauvegarder le fichier directement dans la réponse:

Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" 
Response.AppendHeader("Content-Disposition", "attachment;filename=chart.xlsx") 
YourExcelPackage.SaveAs(Response.OutputStream) 
Response.End() 
+0

Merci d'avoir appris quelque chose de nouveau aujourd'hui –

Questions connexes