Исключение RazorLight.Compilation: не удалось скомпилировать созданный шаблон Razor.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Исключение RazorLight.Compilation: не удалось скомпилировать созданный шаблон Razor.

Сообщение Anonymous »


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

Когда я развертываю приложение и оно пытается отправить электронное письмо, оно выдает следующее исключение:

RazorLight.Compilation.TemplateCompilationException: не удалось скомпилировать созданный шаблон Razor: - (3:35) Тип «Атрибут» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (3:10) Тип «Тип» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (35:37) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (38:66) «GeneratedTemplate.ExecuteAsync()»: тип возвращаемого значения должен быть «Задача», чтобы соответствовать переопределенному элементу «TemplatePageBase.ExecuteAsync()» - (38:66) Тип «Задача» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (40:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (41:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (42:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (43:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (53:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (69:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (84:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (44:19) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (92:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (47:20) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (100:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (50:20) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (108:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (53:19) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (116:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». - (124:12) Тип «Объект» определен в сборке, на которую нет ссылок. Необходимо добавить ссылку на сборку «System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e». Подробную информацию см. в разделе CompilationErrors. в RazorLight.Compilation.RoslynCompilationService.CompileAndEmit(IGeneratedRazorTemplate razorTemplate) в RazorLight.Compilation.RazorTemplateCompiler.CompileAndEmit(RazorLightProjectItem projectItem) в RazorLight.Compilation.RazorTemplateCompiler.OnCacheMissAsync(String templateKey) --- Конец трассировки стека из предыдущего местоположения --- в RazorLight.EngineHandler.CompileTemplateAsync (строковый ключ) в RazorLight.EngineHandler.CompileRenderAsync[T](строковый ключ, модель T, ViewBag ExpandoObject) в CallSite.Target(Closure, CallSite, Object) в System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](сайт CallSite, T0 arg0) в FluentEmail.Razor.RazorRenderer.ParseAsync[T](строковый шаблон, модель T, логическое значение isHtml) в FluentEmail.Razor.RazorRenderer.FluentEmail.Core.Interfaces.ITemplateRenderer.Parse[T](строковый шаблон, модель T, логическое значение isHtml) at FluentEmail.Core.Email.UsingTemplateFromFile[T](строковое имя файла, модель T, логическое значение isHtml) в WatchDog.Services.NotificationService.SendEmailAsync[TModel](строка субъекта, строковое имя файла, модель TModel) в C:\Users\SomeOne\source\repos\WatchDog\WatchDog\Services\NotificationService.cs:строка 41 Моя установка выглядит следующим образом:
Папка «Просмотры» Ссылки
Изображение

Изображение
Папка «Просмотры»
Я добавил папку Views, и обратите внимание, что это проект .NET 5 Worker Service (если это имеет значение, а не какой-то веб-проект).
Файл Program.cs:
Внутри ConfigurationServices я добавил RazorRenderer как:

//Настраиваем службу электронной почты с помощью FluentEmail Services.AddFluentEmail("appname@domain.com") .AddRazorRenderer(@$"{Directory.GetCurrentDirectory()}/Views/") .AddSmtpSender("smtp.somesmtp.com", 25) .AddSmtpSender(new System.Net.Mail.SmtpClient() {}); Файл NotificationService.cs: частная асинхронная задача SendEmailAsync(тема строки, модель TModel) { пытаться { используя (область var = _serviceProvider.CreateScope()) { var email = awaitscope.ServiceProvider.GetRequiredService() .To(string.Join(";", _emailRecipients)) .Тема(тема) .UsingTemplateFromFile("./Views/Emails/SomeReport.cshtml", модель) .SendAsync(); } } поймать (Исключение ex) { _logger.LogError(ex, «Не удалось отправить электронное письмо. Чтобы получить дополнительную информацию, проверьте исключение.»); } } Файл SomeReport.cshtml: SomeReport.cshtml находится внутри Views\Emails\SomeReport.cshtml, который выглядит следующим образом:

@using System.Collections.Generic; @using WatchDog.Models; @model IEnumerable @{ Layout = "./Shared/_Layout.cshtml"; } @* Работайте с моделью здесь... *@ Файл _Layout.cshtml: _Layout.cshtml находится внутри Views\Shared\_Layout.cshtml, который выглядит следующим образом:

@* Здесь приведены некоторые распространенные стили макета *@ @RenderBody() Файл WatchDog.csproj: Я также добавил PreserveCompilationContext и PreserveCompilationReferences:

net5.0 true true Я просмотрел все и до сих пор не нашел решения этой проблемы. Пожалуйста, помогите.

Спасибо!
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Razorlight.compilation исключение: не удалось снять шаблон сгенерированного бритвы
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • ОШИБКА на СЕРВЕРЕ: jsp.error.compilation.dependent
    Гость » » в форуме JAVA
    0 Ответы
    19 Просмотры
    Последнее сообщение Гость
  • Заблокирован с помощью Android Studio Compilation. Manifestmerger2 $ MergeFailureExcept
    Anonymous » » в форуме Android
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Используя Flutter, я получаю ошибку Daemon Permon Compilation: NULL
    Anonymous » » в форуме Android
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Используя Flutter, я получаю ошибку Daemon Permon Compilation: NULL
    Anonymous » » в форуме Android
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»