Как вы называете это PricedPdf
действие?Если вы звоните с AJAX, забудьте об этом.Вы не можете вернуть PDF из AJAX-звонка или, точнее, можете, но с этим мало что можете сделать.Поэтому создайте обычную ссылку html, указывающую на это действие:
<%= Html.ActionLink("show pdf", "PricedPdf") %>
После того, как вы нажмете на полученную привязку, браузер будет перенаправлен на страницу, которая откроет полученный PDF, используя соответствующийПлагин установлен в вашей системе (если есть).Если вы не хотите открывать PDF в текущем окне браузера, вы можете добавить атрибут target="_blank"
к привязке.
Наконец, если вы хотите открыть PDF только внутри какой-то части страницы, вы можете встроить его в разметку.
Таким образом, в основном у вас будет действие контроллера, которое будет возвращать частичный HTML-код, содержащий PDF-включение:
public ActionResult SomePartial()
{
return PartialView();
}
И частичное может выглядетьвот так:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<object type="application/pdf" data="<%= Url.Action("PricedPdf") %>" width="500" height="650">
Click <%= Html.ActionLink("here", "PricedPdf") %> to view the file
</object>
И вы бы использовали это действие в своем вызове AJAX.