2010-03-14 30 views
1

我已经写在该代码.NET 4.0使用VS2010终极Beta 2中没有过载的:SmtpClient.Send()抱怨的不正确的对象MAILMESSAGE经过时

smtpClient.Send(mailMsg); 

smtpClient是SmtpClient基准(I有添加了相关的参考资料),同样对于mailMsg(是MailMessage) - 没有错误说明检查丢失的程序集。

不过,我不断收到一个错误说我有过载的不正确,不,当SmtpClient它可以是一个对象MAILMESSAGE或为了解决,发件人地址,主题等

为什么没有验证码工作?完全困惑。

感谢

+0

错误的确切文本是什么? – SLaks 2010-03-14 01:01:46

+0

是编译器错误还是运行时错误? – 2010-03-14 01:03:21

+2

没有理由不应该,你可以给更多的代码,这可能会有所帮助。 – 2010-03-14 01:04:18

回答

1

有两种不同的MailMessage类:System.Net.Mail.MailMessageSystem.Web.Mail.MailMessageSystem.Web.Mail名称空间中的名称空间已过时,并且与SmtpClient不兼容。确保您使用的是正确的课程,也许您的代码中有using System.Web.Mail子句

0

的错误信息是很清楚 - 你没有使用正确的参数的发送方法。

这是什么来帮助你:

using (MailMessage message = new MailMessage()) 
{ 
    message.From = new MailAddress(textFrom.Text); 
    message.To.Add(textTo.Text); 
    message.Subject = textSubject.Text; 
    message.Body = textBody.Text; 

    SmtpClient client = new SmtpClient(); 

    client.Host = textHost.Text; 
    client.Port = Int32.Parse(textPort.Text); 
    client.Credentials = new NetworkCredential(textUsername.Text, textPassword.Text); 

    client.Send(message); 
}