Параметры в ASP. NET MVC для создания PDF - PullRequest
0 голосов
/ 13 апреля 2020

У меня есть особая проблема, я работаю с ASP. NET MVC на C# и SQL Сервере. Идея состоит в том, что на главном экране вы видите текстовое поле и кнопку, вводя число, которое приносит нам наши данные. Принося эти данные, человек может выбрать, хотят ли они видеть, есть ли эти данные в PDF. Но когда я пытаюсь перенести эти данные в pdf, возникает проблема, которую я покажу.

Индекс:

<div>
        <form method="post" action="/Home/ChRoja">
            <p>Titulo: <input type="text" name="titulo" /></p>

            <p><input type="submit" value="Chequera Roja" /></p>
        </form>
    </div>

Контроллер:

public ActionResult Index()
   {
       return View();
   }

   public ActionResult ChRoja() 
   {
       ConexionSQL cn = new ConexionSQL();
       double titulo = Convert.ToDouble(Request.Form["titulo"].ToString());
       return View(cn.cargarDatos(titulo));
   }

   public ActionResult Pdf()
   {
       double titulo = Convert.ToDouble(Request.Form["id"].ToString());
       return new Rotativa.ActionAsPdf("ChRoja", titulo);
   }

ChRoja:

<body style='background: url(/images/CHEQUERAS-ROJAS-CORTA.png) no-repeat center'>
    <div>
        <form id="form">

            <div>
                <table back>
                    @foreach (var item in Model)
                    {
                        <tr>

                            <th scope="row" abbr="Suscriptor">Suscriptor: </th>
                            <td>

                                <b>@Html.DisplayFor(modelItem => item.Apellido) @Html.DisplayFor(modelItem => item.Nombre)</b>
                            </td>
                            <td>Título: @Html.DisplayFor(modelItem => item.Titulo)</td>
                            <td>
                                @Html.ActionLink("Ver detalles en PDF", "Pdf", new { id = item.Titulo })
                            </td>
                        </tr>
                    }
                </table>
            </div>
        </form>

        <a href="@Url.Action("Pdf", "Home")">Convertir a Pdf</a>
    </div>
</body>

Так что проблема в том, что когда я нажимаю для просмотра значений PDF запроса, происходит следующее:

System.NullReferenceException: 'Referencia a objeto no establecida como instancia de un objeto.' *

enter image description here

Есть предложения?

Ответы [ 2 ]

1 голос
/ 14 апреля 2020

вы используете неправильный конструктор для Html .ActionLink. Здесь есть ответ .

Решение для вашего случая - добавить параметр «Home» для действия контроллера, а также ноль в конце для htmlattributes.

@Html.ActionLink("Ver detalles en PDF", "Pdf", "Home", new { id = item.Titulo }, null)
1 голос
/ 14 апреля 2020

Решение: Изменить это

@Html.ActionLink("Ver detalles en PDF", "Pdf", new { id = item.Titulo })

Для этого:

@Html.ActionLink("Ver detalles en PDF", "Pdf", new { titulo = item.Titulo })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...