我想用C#发送电子邮件并使用MySQL数据库中的邮件地址。顺便说一句,我完全是个初学者。这就是我到目前为止所做的:
我创建了一种发送电子邮件的方法:
public static void sendEmail()
{
DataClassesDataContext dc = DataContext;
var _userMail = (from u in dc.Users
select u.Email).ToString();
foreach (var item in _userMail)
{
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress("mymail@gmail.com");
mail.To.Add(_userMail);
mail.Subject = "Test Mail";
mail.Body = "This is for testing SMTP mail from GMAIL";
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential("myusername", "mypassword");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
}我正在以我的一种形式调用这个方法:
try
{
AppMethod.sendEmail();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}我希望使用_userMail从用户表中获取所有邮件,这就是我将其转换为字符串的原因。我该怎么做?我的意思是我的错误在哪里,我找不到。
发布于 2014-07-01 13:50:43
我假设Item包含您的电子邮件Id,那么您可以使用下面的代码,如果您希望收集邮件,那么您的查询应该是
var _userMail = dc.Users.Select(p=>p.Email);只需替换
mail.To.Add(_userMail);至
mail.To.Add(item);如果Item是User的对象,那么你必须尝试下面提到的代码
mail.To.Add(item.emailId);https://stackoverflow.com/questions/24503222
复制相似问题