gpt4 book ai didi

c# - 给定的键不在字典中

转载 作者:可可西里 更新时间:2023-11-01 07:54:47 29 4
gpt4 key购买 nike

我接手了一个项目,在 .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.GetSettingKeyValuePair()["LA_MembershipProvider_lostPasswordEmailFrom"]) 时,如果没有名为 LA_MembershipProvider_lostPasswordEmailFrom 的 key ,您将得到 “The given key was not存在于字典中” 错误。您可以做的是,先检查键是否存在,然后再获取值。你可以按照下面的方式做

public static string LostPasswordEmailFrom
{
get
{
var kvp = SiteSettings.GetSettingKeyValuePair();

if (kvp == null || !kvp.ContainsKey("LA_MembershipProvider_lostPasswordEmailFrom"))
return Globals.Settings.FromEmail;
return kvp["LA_MembershipProvider_lostPasswordEmailFrom"];
}
}

关于c# - 给定的键不在字典中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18458018/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com