Récemment je faisais face à ce problème aussi, finalement obtenu la solution
Pour faire fonctionner correctement dans Firefox, assurez-vous entre guillemets de nom de fichier sont placés correctement et sans espace dans le nom du fichier
donc here est l'exemple échantillon pour faire test de base
Cela fonctionne:
Response.ClearContent();
Response.ContentType = "text/csv";
Response.AddHeader("Content-Disposition", "attachment;filename="+ "MyOrders"+ "_Date_"
+DateTime.Now.ToString("d")+".csv");
Cela permettra également de travailler:
string myfilename = "MyOrders" + "_Date_" + DateTime.Now.ToString("d") + ".csv";
Response.AppendHeader("Content-Disposition", string.Format("attachment;filename={0}",
myfilename));
//here you can check using the break point,weather you are using any extra quotes in filename
Cela ne fonctionnera pas dans Firefox
Response.AddHeader("Content-Disposition", "attachment;filename="+ "MyOrders"+ "_Date_"
+DateTime.Now+".csv");
// because in DateTime.Now there is spaces in Time, Seconds , so firefox downloads file not
//as csv but downloads it as File , may be a binary file or unknown file type
Références utilisées this, this, this et this
Merci à tous ceux dont les postes ont aidé d'une manière ou d'une autre.
Espérons que cela puisse aider quelqu'un.
Pourquoi les gens ont voté seulement le membre le plus âgé? –
Peut-être parce qu'il a lié la documentation –
Peut-être, idk ... Je * pense * la solution est d'utiliser les citations (être échappé) mais honnêtement je ne sais pas - J'ai posté ce que je savais que cela a fonctionné pour moi, j'ai pas de lien vers la documentation ou quoi que ce soit car c'est le code que j'ai créé il y a des mois et des mois et que je n'ai jamais utilisé depuis. – kastermester