首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ASPNETDB中使用MVCMailer

在ASPNETDB中使用MVCMailer
EN

Stack Overflow用户
提问于 2012-08-17 00:34:29
回答 1查看 390关注 0票数 1

我正在尝试设置MVCMailer使用电子邮件和UserId,当他们在网站注册时设置。我使用常用的MVC框架来设置用户注册框架,因此使用ASPNETDB.MDF DB来跟踪电子邮件、userID和密码。我被困在如何从数据库中拉出当前的用户id和电子邮件,以便MVCMailer知道向何处发送带有密码重置指令的电子邮件。下面是我从DB中获取数据并将其放入send mail函数的尝试。我知道我错了,因为我在会员资格这个词下面有红色的乱码。

代码语言:javascript
复制
public virtual MailMessage Welcome(string ADID)
        {
            var mailMessage = new MailMessage{Subject = "Welcome"};

            mailMessage.To.Add(membership.Email);
            ViewBag.Name = membership.UserId;
            PopulateBody(mailMessage, viewName: "Welcome");

            return mailMessage;
        }

有没有人知道如何做到这一点,我已经搜索了几个小时,关于如何完成这一点,没有运气。我看过的所有教程似乎都使用了硬编码的值来发送电子邮件。如果您需要任何其他代码,请让我知道,谢谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-17 01:50:40

您可以通过查询您的成员资格提供程序来获取它:

代码语言:javascript
复制
public virtual MailMessage Welcome(string ADID)
{
    var mailMessage = new MailMessage{ Subject = "Welcome" };
    var user = Membership.GetUser();

    mailMessage.To.Add(user.Email);
    ViewBag.Name = user.UserName;
    PopulateBody(mailMessage, viewName: "Welcome");

    return mailMessage;
}

另一种可能是从控制器操作发送电子邮件,从而将有关当前连接的用户的信息作为参数传递:

代码语言:javascript
复制
using Mvc.Mailer;

public class HomeController: Controller
{
    private readonly UserMailer _mailer = new UserMailer;

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

    public ActionResult SendEmailToNewUser()
    {
        var user = Membership.GetUser();
        _mailer.Welcome(user.Email, user.UserName).Send();
        return View();
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11991712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档