2010-03-14 29 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); 
}