2013-04-04 58 views
0

我正在使用ASP.NET成員資格提供程序。我想要設置密碼恢復,如here。我正在使用Visual Studio 2012中默認的IIS Express。但它看起來像IIS Express不支持SMTP,因爲它的回答爲hereIIS Express上的PasswordRecovery

那麼我有什麼選擇去設置密碼恢復?

+1

在我的dev環境我使用http://smtp4dev.codeplex.com/快速,簡單,效果很好! – cheesemacfly 2013-04-04 18:01:15

+0

感謝@cheesemacfly的建議。我結束了使用Gmail。工作很好。 – btevfik 2013-04-05 00:00:54

回答

1

一個解決方案我發現沒有安裝任何東西,是使用Gmail。因爲它在這裏討論了http://forums.asp.net/t/1124257.aspx/1 它迄今爲止的工作非常好,用於開發目的。

所以從那個職位。

這是在web配置郵件設置應該是什麼樣子:

<system.net> 
    <mailSettings> 
     <smtp deliveryMethod="Network" from="[email protected]"> 
     <network defaultCredentials="false" host="smtp.gmail.com" port="587" userName=username" password="xxxxxxxxxxxx" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 

aspx頁面:

<asp:PasswordRecovery ID="PasswordRecovery1" runat="server" 
     onsendingmail="PasswordRecovery1_SendingMail"> 
    </asp:PasswordRecovery> 

後面的代碼(C#):

protected void PasswordRecovery1_SendingMail(object sender, MailMessageEventArgs e) 
    { 
     MailMessage mm = new MailMessage(); 


     mm.From = e.Message.From; 

     mm.Subject = e.Message.Subject.ToString(); 

     mm.To.Add(e.Message.To[0]); 

     mm.Body = e.Message.Body; 
     SmtpClient smtp = new SmtpClient(); 
     smtp.EnableSsl = true; 

     smtp.Send(mm); 
     e.Cancel = true; 
    }