Я создаю приложение .NET Core Api + Angular, которое требует отправлять электронные письма своим пользователям. Функция работает нормально, используя HTML-шаблоны и некрасивый код для замены содержимого в этих файлах (есть как минимум 4 HTML-шаблона). Теперь я хочу сделать это лучше и использовать бритвенные виды в качестве моих «почтовых шаблонов», и я следую статье здесь
В основном код использует 3 проекта: страницы бритвы / стандартная библиотека libray / библиотека классов Razor, но в моем случае я хочу добавить только эти файлы "cshtml" внутри моего проекта API. Чтобы я создал папку Views и внутри нее все необходимые виды бритвы. После этого я опубликовал эти бритвенные представления, чтобы проверить, понимает ли проект такого рода проект, что он должен переместить папку и файлы в конечный пункт назначения, НО ничего не происходит.
Также я сделал несколько небольших изменений в своем классе StartUp, чтобы сообщить VS, что этот проект также поддерживает MVC
Метод ConfigureServices:
services.AddMvc(config => {
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
config.Filters.Add(new AuthorizeFilter(policy));
});
Способ настройки:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
После этих изменений ничего не происходит. Чего не хватает?
Обновление 1: я нашел эту полезную ссылку о страницах бритвы и насколько я понимаю, файлы Razor компилируются как во время сборки, так и во время публикации, и нет способа проверить, правильно ли файлы бритвы были скопированы в выходную папку .