Вот мой код Я пробовал следующий способ разместить функциональность для загрузки файла, но он не работает должным образом. Он не показывает диалог сохранения файла.MVC 4 Загрузить файл
protected virtual FileResult Download(string FileName, string FilePath)
{
Response.AppendHeader("Content-Length", FileName.Length.ToString());
return File(FilePath, "application/exe", FileName);
}
И попробовал этот способ также:
protected virtual ActionResult Download(string FileName, string FilePath)
{
Response.Clear();
Response.AppendHeader("Content-Disposition", "attachment; filename=" + FileName);
Response.AppendHeader("Content-Length", FileName.Length.ToString());
Response.ContentType = "application//x-unknown";
Response.WriteFile(FilePath.Replace("\\", "/"));
Response.Flush();
Response.End();
}
Но оба не работают. Что мне не хватает?
Я надеюсь, что вы осведомлены о проблемах безопасности ваших FilePath и имя файла переменные приходят вместе с ... – TGlatzer
длиной имени файла! = Content длиной. Кроме того, его вероятные браузеры блокируют исполняемую загрузку. Я знаю, что мой IE делает ... и Chrome забрасывает «вы абсолютно уверены»? Незамедлительный. –
Посмотрите этот же вопрос: http://stackoverflow.com/questions/3604562/download-file-of-any-type-in-asp-net-mvc-using-fileresult –