У меня есть требование вызвать метод контроллера со страницы просмотра. При щелчке ссылки ниже метод должен быть вызван.Новое окно открывается по щелчку actionLink
@Html.ActionLink(item.InvoiceNumber, "SendPdfStatement", "Invoice",
new { item.InvoiceNumber }, new { target = "_blank" })
метод подписи, как:
public void SendPdfStatement(string InvoiceNumber)
{
InvoiceNumber = InvoiceNumber.Trim();
ObjectParameter[] parameters = new ObjectParameter[1];
parameters[0] = new ObjectParameter("InvoiceNumber", InvoiceNumber);
List<Models.Statement> list = new List<Models.Statement>();
list = _db.ExecuteFunction<Models.Statement>("uspInvoiceStatement", parameters).ToList<Models.Statement>();
var statementResult = _db.ExecuteFunction<Models.Statement>("uspInvoiceStatement", parameters);
Models.Statement statement = statementResult.SingleOrDefault();
pdfStatementController.WriteInTemplate(statement);
}
теперь проблема, когда я нажимаю на ссылку, откроется пустое окно. Я знаю, что это что-то с new { target = "_blank" }
. Если я пройду null
, то на моей странице моя страница со ссылкой станет пустой. Что мне передать, чтобы моя страница осталась такой, какая есть, и не появляется новое пустое окно.
Проблема заключается в методе контроллера, а не в этом HTML-помощника вызова.Похоже, что ваш метод возвращает пустой результат. Вы должны показать нам недостающий код. Кстати, ваш метод следует называть 'SendPdfStatement', в классе' InvoiceController'. Вы уверены, что проверяете правильную? –
метод называется SendPdfStatement только в InvoiceController. Положите код детали для метода – 14578446