URLの文字列に表示されるクエリ文字列キーの数を数えたい。ここでのURLは文字列であるため、Request.QueryString.AllKeysを使用してURL内のキーの数をカウントすることはできません。現在、URL文字列の構造を分析し、文字列内のカウント文字列を使用してURL文字列内のクエリ文字列キーをカウントすることで、これを解決できます。私のコードサンプルでは、誰もがはっきりと見ることができます。
public int CountQueryStringKey(string urlString)
{
string urlWithoutKey = urlString.Substring(0, urlString.IndexOf("?"));
string allKeyString = urlString.Substring(urlString.IndexOf("?") + 1);
string[] allKeyAndValue = allKeyString.Split('&');
return allKeyAndValue.Length;
}
シンプルですが、十分ではありません。urlの文字列にクエリ文字列キーがなく、構造がわからないさまざまな種類のURLが常に存在する場合はどうなりますか。
私はこの問題の良い解決策のためにいくつかの助けが必要です。