Я пытаюсь открыть файл PDF, расположенный в папке (Content / extras) в моем приложении, используя контроллер, и он не работает для меня. Я получаю сообщение об ошибке:
"Не удалось найти файл 'C: /..../ Content / extras / PDFName'" Сведения об исключении: System.IO.FileNotFoundException: не удалось find file 'C: /..../ Content / extras / PDFName' "
Таким образом, в основном говорится, что он не может найти файл, но файл находится на 100% в этом месте и имя верное. Однако я замечаю, что он пытается найти «PDFName» вместо «PDFName.pdf», так что, возможно, именно это не так, и это «MimeMapping» в контроллере, который не закодирован правильно.
Вот мой код:
Контроллер
public FileResult PDFFlyer()
{
string path = Server.MapPath(String.Format("~/Content/extras/PDFName"));
string mime = MimeMapping.GetMimeMapping(path);
return File(path, mime);
}
RouteConfig
routes.MapRoute(
name: "PDFFlyer",
url: "{filename}",
defaults: new { controller = "PDF", action = "PDFFlyer", filename =
UrlParameter.Optional }
);
Файл CS html
<a class="dropdown-item" href="@Url.Action("PDFFlyer", "PDF")" target="_blank">PDF Flyer</a>
Что я что-то не так? Опять же, я предполагаю, что код контроллера «MimeMapping» неверен, потому что он, похоже, не ищет «.pdf». и только ищет PDFName, но не совсем уверен, что не так. Есть предложения? Спасибо.