Как заставить браузер загружать xml файл?

Это моя проблема. Я загружаю xml из своей базы данных и выталкиваю его клиенту с помощью кода. Но проблема в том, что браузер автоматически открывает этот xml вместо того, чтобы предлагать его как загрузку.

Есть ли способ заставить ваш браузер загружать этот файл и не показывать его?

Я работаю в среде С#, Asp.net(с IIS7).

спасибо

Ответ 1

protected void DisplayDownloadDialog()
{
    Response.Clear();
    Response.AddHeader(
        "content-disposition", string.Format("attachment; filename={0}", "filename.xml"));

    Response.ContentType = "application/octet-stream";

    Response.WriteFile("FilePath");
    Response.End();
}

Это заставит загрузить файл, а не отображать его в браузере.

Это будет работать для любых типов файлов без необходимости указывать какие-либо специальный тип MIME.

Ответ 2

Это объясняется в этой статье: http://www.xefteri.com/articles/show.cfm?id=8

Ключ находится в этой строке:

Response.AddHeader("Content-Disposition", "attachment; filename=" & file.Name) 

Ответ 3

Добавить заголовок содержимого: вложение.