В моем приложении я сохраняю некоторые файлы на сервере и делаю их доступными для загрузки в какой-либо бизнес-логике, загружаются все другие типы файлов, но файл .msg(сообщение Outlook) не загружается, дает ошибку: "404 - Файл или каталог не найдены. Ресурс, который вы ищете, возможно, был удален, изменилось его имя или временно недоступно". Изображения,.docx,.txt все остальные файлы работают хорошо. Страница разработана в ASP.NET и на клиентском сайте появляется следующая надпись.
.msg файл дает ошибку загрузки
Ответ 1
Найдено на ASP.NET forum.
Создайте обработчик, загрузите его как файл:
Response.ContentType = "application/vnd.ms-outlook";
Response.AppendHeader("Content-Disposition","attachment; filename=Message.msg");
Response.TransmitFile(Server.MapPath(YourPathToMsgFile));
Response.End();
или измените настройку в IIS 6.0:
Выберите HTTP-заголовок → нажмите MIME-типы → Нажмите "Создать" и добавьте ".msg" в качестве расширения и "application/vnd.ms-outlook" в качестве типа MIME.
Ответ 2
используя этот тег ниже, мы можем напрямую указать имя файла в теге.
<a href="Your File_Location">Download Link</a>
нет необходимости указывать код в контроллере.
просто добавьте тег ниже в web.config внутри
<staticContent>
<mimeMap fileExtension=".msg" mimeType="application/octet-stream" />
</staticContent>
Ответ 3
<system.webServer>
<staticContent>
<mimeMap fileExtension=".msg" mimeType="application/octet-stream" />
</staticContent>
</system.webServer>