2011-03-04 77 views
0

我已經使用此代碼發送郵件,但我沒有收到任何錯誤,但我能夠收到郵件。在「inetmgr」中的中繼郵件中,默認的smtp服務器也被設置爲「127.0.0.1」作爲本地主機,但我仍然無法收到郵件。我不知道問題出在哪裏。郵件發送問題

emailsender.cs類這是代碼:

​​

.aspx文件:

protected void Page_Load(object sender, EventArgs e) 
{ 
    EmailSender email = new EmailSender(); 
    email.SendEmail("[email protected]", "testingmail", "this is a test mail", "From"); 
} 
+0

你得到了什麼錯誤? – Anuraj 2011-03-04 07:05:20

+0

我沒有收到任何錯誤,但我無法收到郵件 – 2011-03-04 07:15:42

回答

0

如果使用PickupDirectoryFromIis選項,請檢查C:\ Inetpub \ mailroot \ Pickup或Queue或Badmail目錄是否創建了EML文件。如果它在PickUp或Queue文件夾中,則IIS可能會處理該文件。如果它在BadMail中,則IIS無法處理該文件。

+0

它在隊列中 – 2011-03-04 08:35:14

+0

如果在第一次試用期間無法將電子郵件發送到指定的電子郵件地址,IIS SMTP服務會將其移動到「隊列」文件夾,並且IIS SMTP服務將在以後繼續重試,直到過期。您可以在「控制面板 - >管理工具 - >控制面板 - >管理工具 - >互聯網信息服務 - >默認SMTP虛擬服務器 - >屬性 - >傳送」 - http:// www中設置IIS SMTP服務的到期超時時間。 emailarchitect.net/webapp/smtpcom/developers/smtpservice.asp – Anuraj 2011-03-04 08:39:41

+0

我應該設置多少時間? – 2011-03-04 08:49:59

0

我經歷了同樣的問題,有時會組織不會允許訪問發送email.so我試着電子郵件中繼服務器。嘗試彈性郵件。

+0

雅我在繼電器郵件選項中的默認smtp服務器中使用了本地主機? – 2011-03-04 07:16:51

0

如果沒有錯誤,最有可能的smpt服務器設置問題。首先,您使用的是localhost,而不是127.0.0.1。我建議在調用localhost時使用127.0.0.1作爲最佳實踐。

即使它是「不應該太需要」,也沒有任何理由,使用本地主機。至少把「127.0.0.1 localhost」放在windows etc \ hosts文件中。您也可以嘗試一個您知道可以訪問的外部SMTP主機(如您的isp)。我知道錯誤配置的smtp主機可以顯示爲已成功發送。

但是,正如上面已經指出的其他問題一樣,可能存在很多其他問題,例如訪問發送郵件。儘管如此,我認爲大多數錯誤都會給你帶來錯誤。