0

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();
}

それでも同じ例外が発生します。

値が QueryString としてアクセスできるかどうかという条件に基づいて、この値を取得するにはどうすればよいですか?

(ちょっと言葉足らずですみません)

4

1 に答える 1

1

インデクサーを使用する代わりに、TryGetValue メソッドを使用できます。

次のようになります。

HtmlDocument htmlDoc = HtmlPage.Document;
string productCode;

if (!htmlDoc.QueryString.TryGetValue("productCode", out productCode))
{
    productCode = htmlDoc.GetElementById("vidWeeklyFeature").GetProperty("value").ToString();
}
于 2013-07-17T12:40:31.023 に答える