Как назвать файл для скачивания на Firefox? - PullRequest
2 голосов
/ 20 июля 2009

Следующие заголовки работают на IE, но не на FF

<%@ Page Language="C#" ContentType="text/csv" Inherits="System.Web.Mvc.ViewPage"%>
<% Response.AddHeader("Content-Disposition", "filename=report.csv;attachment"); %>

В FF предлагаемое имя в FF отображается как «отчет» без расширения.

Ответы [ 5 ]

4 голосов
/ 20 июля 2009

filename - это просто параметр Содержание-распоряжение . Таким образом, вы должны поменять местами оба:

<% Response.AddHeader("Content-Disposition", "attachment;filename=report.csv"); %>
3 голосов
/ 20 июля 2009

Я сейчас использую код, который выглядит следующим образом:

response.AddHeader("Content-Disposition", "attachment; filename=\"data.csv\"");

В моей повседневной работе - и это прекрасно работает. Также вы уверены, что это не ваша ОС или что-то с включенным параметром «Скрыть расширения для известных типов файлов»? (Я знаю, что у Windows есть эта опция, и она сводит меня с ума)

2 голосов
/ 03 сентября 2015

Недавно я тоже столкнулся с этой проблемой, наконец-то получил решение

Для корректной работы в Firefox, убедитесь, что в имени файла Котировки размещены правильно и без пробелов в имени файла

, поэтому здесь - это пример для выполнения базового теста

Это будет работать:

Response.ClearContent();
Response.ContentType = "text/csv";
Response.AddHeader("Content-Disposition", "attachment;filename="+ "MyOrders"+ "_Date_"
+DateTime.Now.ToString("d")+".csv");

Это также будет работать :

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

Это не будет работать в 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

Использованные ссылки это , это , это и это

Спасибо всем, чей пост как-то помог.

Надеюсь, это кому-нибудь поможет.

1 голос
/ 20 июля 2009

Этот вопрос о создании CSV помог мне, когда мне нужно было реализовать создание и загрузку CSV: Как лучше всего создать CSV (текстовый файл с разделителями-запятыми) для загрузки с ASP.NET?

0 голосов
/ 20 июля 2009

try "attachment; filename=\"report.csv\"" (то есть с указанным именем файла)

...