c# 如何检查 QueryString Values 计数是否与键计数具有相同的值

标签 c# dictionary

这是我的问题:

如果我的 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/

相关文章:

python - 如何在 Protobuf 中序列化嵌套消息中的默认值

python - 似乎无法遍历键为数字字符串的已排序字典。您如何对字典进行排序以进行迭代?

c# - 在实体及其代理类型之间进行转换

c# - 如何在sql中将已删除的行插入到另一个表中

c# - 观察新插入的 SQL 表的有效方法

java - 此分配中无效的内容 : `Map<String, Object> mObj = new HashMap<String, String[]>();` ?

c# - 什么是交换 2 个整数变量的 C 代码

c# - MethodInvoker 的区别?

python根据键值过滤字典列表

python - 在 Python 中使用方法将文本文件内容追加到字典中?