我繼承了一個項目,在嘗試在.NET 4.0項目中檢索丟失的密碼時給用戶提供上述錯誤。我通過了一步,發現了問題點,但問題是,生成的值似乎是正確的,所以我不知道錯誤發生的原因。在此先感謝任何可以查看以下代碼的人,並幫助我瞭解如何解決此問題。讓我知道是否需要更多信息。我翻閱了所有我能找到的東西,但沒有給我提供我可以使用的線索。問題是我無法追蹤鍵/值組合應該進入的位置,我也不知道如何添加它。代碼如下。給定的關鍵字不存在於字典中
我發佈了一個類似的討論http://forums.asp.net/t/1926444.aspx/1?given+key+was+not+present+in+the+dictionary但沒有人知道如何幫助我。
void EmailUser(User user)
{
user.ChangePasswordID = Guid.NewGuid();
user.Save();
MailMessage email = new MailMessage();
//problem line below
email.From = new MailAddress(Settings.LostPasswordEmailFrom);
email.To.Add(new MailAddress(uxEmail.Text));
email.Subject = Settings.LostPasswordSubject;
email.Body = EmailTemplateService.HtmlMessageBody(EmailTemplates.MembershipPasswordRecovery, new { Body = Settings.LostPasswordText, BeginRequired = "", EndRequired = "", UserName = user.Name, GUID = user.ChangePasswordID.ToString() });
email.IsBodyHtml = true;
SmtpClient client = new SmtpClient();
client.Send(email);
uxSuccessPH.Visible = true;
uxQuestionPanel.Visible = false;
uxUserInfoPanel.Visible = false;
uxUserNameLabelSuccess.Text = uxEmail.Text;
}
/// <summary>
/// The address that the lost password email will be sent from
/// </summary>
public static string LostPasswordEmailFrom
{
get
{
if (String.IsNullOrEmpty(SiteSettings.GetSettingKeyValuePair()["LA_MembershipProvider_lostPasswordEmailFrom"]))
return Globals.Settings.FromEmail;
return SiteSettings.GetSettingKeyValuePair()["LA_MembershipProvider_lostPasswordEmailFrom"];
}
}
你能分享'SiteSettings'類的代碼嗎? – achakravarty
-3對新用戶的問題,真的嗎?如果你有衝動的想法,也許你可以解釋他可以做些什麼來改進它,回過頭來看看他是否改進了它,並將它變成+1作爲鼓勵。這就是社區的構建方式。 – AutomatedChaos
Achakravarty,我如何分享該代碼?此評論框對字符數量有限制,這比我需要輸入的代碼少得多。 – muybn