用户未处理KeyNotFoundException
本文关键字:KeyNotFoundException 未处理 用户 | 更新日期: 2023-09-27 18:23:39
我试图在MainPage.xaml.cs中检索一个查询字符串值,但也需要访问该值,将其作为另一个页面(aspx)上的html ID进行访问。重点是,如果我试图访问QueryString值不存在的代码,我会得到KeyNotFoundException。
我试图通过做以下来克服这个问题
HtmlDocument htmlDoc = HtmlPage.Document;
if (htmlDoc.QueryString["productCode"] != null)
{
productCode = htmlDoc.QueryString["productCode"].ToString();
}
else
{
productCode = htmlDoc.GetElementById("vidWeeklyFeature").GetProperty("value").ToString();
}
但是仍然得到相同的Exception。
如何根据该值是否可以作为QueryString访问的条件检索该值?
(很抱歉有点口齿不清)
您可以使用TryGetValue方法,而不是使用索引器。
它看起来是这样的:
HtmlDocument htmlDoc = HtmlPage.Document;
string productCode;
if (!htmlDoc.QueryString.TryGetValue("productCode", out productCode))
{
productCode = htmlDoc.GetElementById("vidWeeklyFeature").GetProperty("value").ToString();
}