Mike Margolius Ответов: 1

Как сохранить страницу просмотра (cshtml) в PDF с помощью rotativa и ASP.NET ядро 2.0


Я пытаюсь использовать Rotativa для сохранения представления в формате PDF. Он терпит неудачу с ошибкой:

TypeLoadException: не удалось загрузить тип 'Microsoft.AspNetCore.Builder.CookieAuthenticationOptions' from assembly 'Microsoft.AspNetCore.Идентификация.Файлы cookie, версия=2.0.1.0, культура=нейтральная, PublicKeyToken=adb9793829ddae60'.

Я установил пакеты Nuget:
Microsoft.AspNetCore.All(2.0.3)
Microsoft.AspNetCore.Mvc(2.0.1)
Rotativa.NetCore(1.0.4)
RotativaCore(2.1.1)

Если я загружаю <microsoft.aspnetcore.authentication.cookies>, Я получаю ту же ошибку

Что я уже пробовал:

Мой код в контроллере находится ниже:

public IActionResult GetSign()
{
var sign = новый список<sign>
{
новый знак {Name = "Rami1", Company = "Rami",DateSigned=DateTime.Сейчас},
новый знак {Name = "Rami2", Company = "Rami",DateSigned=DateTime.Now}
};
обратный вид(знак);
}

public ActionResult GeneratePDF()
{
верните новый Rotativa.NetCore.ActionAsPdf("GetSign");
}

Я установил RotativaNetCore(1.0.4) и RotativaCore(2.1.)

1 Ответов

Рейтинг:
2

Afzaal Ahmad Zeeshan

Я считаю так, что вы пропустили, когда .NET Core 1.x был обновлен до .NET Core 2.0. например, если вы двигаетесь вперед и проверяете существование CookieAuthenticationOptions, вы не найдете его, потому что он был удален. Вам нужно изменить свой код, а затем перестроить его. Прочтите мою статью, которую я связал ниже, и проверьте другие изменения API в ASP.NET версия ядра 2.0 ниже.

ASP.NET ядро 2.0 Microsoft.сеть САШ.Ссылка на API Builder[^]

Прочтите мою статью, охватывающую некоторые из этих моментов для ASP.NET сердечник, Миссия невыполнима: перенос .NET Core 1.x на 2.0[^], наконец, никогда не забывайте проверять ссылку API для .NET Core по адресу Браузер .NET API | Microsoft Docs[^]


Mike Margolius

Спасибо за информацию. Я пытался следовать вашим инструкциям, но безуспешно. Мое приложение было основано на Core 2.0, так как я изначально написал его в этой версии.