我正在使用MVCMailer并尝试从WebApi发送邮件,但邮件总是以空消息到达。
视图位于/Views/Account/CreateUser.cshtml
中这是我的代码
public class Account: MailerBase
{
public MvcMailMessage CreateUser(CreateNewAccount model)
{
return Populate(x =>
{
x.Subject = model.Subject;
x.ViewName = "CreateUser";
x.To.Add(model.Email);
ViewData.Model = model;
});
}
当我从经典MVC控制器发送电子邮件时,电子邮件正确到达,但从APiControler邮件正文发送是空的。
[RESOLVE] 视图必须位于主视图文件夹中,而不是位于区域中。在我的情况/Views/Account/CreateUser.cshtml
答案 0 :(得分:1)
我想我找到了一个解决方法(花了我几个小时的挖掘时间)。就我而言,我有:
从Web API项目中找不到视图,因为它们位于引用的程序集(MvcMailler项目)中。这显然是一个非常普遍的问题。 我通过安装EmbeddedResourceVirtualPathProvider Nuget包(https://github.com/mcintyre321/EmbeddedResourceVirtualPathProvider)来修复它,它几乎可以开箱即用!
更好地了解正在发生的事情:
希望有所帮助:)