这是我的问题:
如果我的 url 有 QueryString ?asdasdafa
我可以处理它:if(HttpContext.Current.Request.QueryString.HasKeys())
但是如果我的 url 有 QueryString ?asdasasfasdas&brand=Sony
那么它将失败并出现 null 异常,因为它实际上有一个键,而另一个没有。有没有简单的方法可以检查
if(HttpContext.Current.Request.QueryString.KeysCount ==
HttpContext.Current.Request.QuesryString.ValuesCount))
最佳答案
我不认为你需要这样做,做一个简单的空检查就足够了
if(Request.QueryString["asdasdafa"]==null)
{
// value missing
}
事实上 asdasdafa
甚至没有作为 QueryString 的键之一包含在内,这不会使您的应用程序抛出异常。
编辑
根据评论,您可以按如下方式浏览显示的键:
foreach (var item in Request.QueryString.AllKeys)
{
if (Request.QueryString[item] == null)
//value missing
}
关于c# 如何检查 QueryString Values 计数是否与键计数具有相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8143622/