ASP.NET MVC Перенаправление в PDF, но получение 404 на сервере разработки - PullRequest
0 голосов
/ 03 апреля 2012

Итак, мой клиент дал мне MVC-сайт, который был создан, и настроил моего другого поставщика. Я никогда не работал с MVC до сих пор, поэтому я учусь на ходу. Мне дали небольшую дату на сайт, где клиенту нужна ссылка на PDF, который затем откроется в окне браузера. Я добавил PDF и добавил новый маршрут и действие в Контроллере. Вот код, который я добавил:

Код домашнего контроллера

public ActionResult ViewPDF()
{
    return Redirect("Assets/PDF/myPDF.pdf");
}

Код маршрута

routes.MapRoutesLowercase(
    "Home-ViewPDF",
    "myPdf.pdf",
    new { controller = "Home", action = "ViewPDF" }
);

HTML-код

<a href="<% Url.Action("ViewPDF", "Home") %>"></a>"

Теперь, когда я тестирую локально, ссылка работает, и все хорошо. Когда я продвигаюсь на свой сервер разработки, я нажимаю на ссылку и получаю «Страница не найдена». Но я знаю, что файл находится на сервере, потому что, если я наберу путь в pdf, то возникнет проблема.

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

Я должен отметить, что до того, как я использовал Redirect в контроллере, я использовал FileResult и возвращал файл с типом application / PDF. Однако во время отладки я попробовал текущий метод и, как я уже говорил, он работал локально, но не на DEV.

Любая помощь будет чрезвычайно полезна! Спасибо!

1 Ответ

0 голосов
/ 03 апреля 2012

Вы не должны ссылаться на файл напрямую.

Изменение структуры папок приведет к повторному использованию пула приложений.

Взгляните на: MVC открыть PDF-файл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...