C# 从登录用户ASP.NET发送电子邮件
我已经在VisualStudio中创建了一个Web表单。此应用程序正在发送电子邮件。 但我希望发件人地址是登录用户的电子邮件。例如,如果John使用他的电子邮件和密码登录并单击submit,电子邮件将发送给Person X,但发件人地址将来自John。我希望这是一个足够清楚的解释 这是我发送邮件方法的代码片段C# 从登录用户ASP.NET发送电子邮件,c#,asp.net,email,login,webforms,C#,Asp.net,Email,Login,Webforms,我已经在VisualStudio中创建了一个Web表单。此应用程序正在发送电子邮件。 但我希望发件人地址是登录用户的电子邮件。例如,如果John使用他的电子邮件和密码登录并单击submit,电子邮件将发送给Person X,但发件人地址将来自John。我希望这是一个足够清楚的解释 这是我发送邮件方法的代码片段 { MailMessage message = new MailMessage(); message.To.Add(nameddl.Text
{
MailMessage message = new MailMessage();
message.To.Add(nameddl.Text);
message.From = new MailAddress("");
message.Subject = "Notification";
message.Body = "An new entry has been made that requires your attention.";
message.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
}
所以这一行,message.From=新邮件地址(User.LoggedIn);这就是我想要的。但是,如何编写这样的代码,才能使之成为可能呢
注意:这不是一个MVC应用程序,只是一个普通的ASP.NET Web表单
**编辑仍在为这封邮件苦苦挣扎,所以如果有人有了一个很棒的想法?如果您正在会话中存储电子邮件,那么您可以像这样直接传递它 message.From=新邮件地址(会话[“电子邮件”].Tostring) 如果情况并非如此,并且您已将电子邮件存储在数据库中,则只需创建一个返回电子邮件地址的方法即可从数据库中获取电子邮件
message.From=GetEmail() 我使用了这两个建议——进展不太顺利。最后,我创建了一个GetEmail()方法,但是当我尝试将它用作消息时,From=GetEmail()会出现一个错误,错误是“无法隐式地将方法'void'转换为System.Net.Mail.MailAddress”。有什么想法吗?可能是@JimMSDN Nope的重复,这不一样。我正在尝试使用登录用户的电子邮件作为发件人地址。可能我没有找到问题-是什么阻止您简单地将
邮件的
.FROM属性设置为电子邮件地址,并显示登录用户的名称(无论您在何处存储该名称)使用新的邮件地址?Alamessage.From=新邮件地址(“x@y.com“,”约翰·多伊“代码>很好用。我做到了。但是当不同的用户登录并开始提交时?它需要是通用的,它需要为所有注册用户工作。同样,您将如何在代码中显示它???另外,这些信息存储在SQL数据库中