jhonwilliams pregunta cómo saber si un QueryString existe antes de asignarlo a una variable. Imaginemos que existen varias claves pasadas por URL, es decir, por QueryString. En ese caso tu comprobación no serviría.
Quieres saber si existe, por ejemplo, clave3 y tú has pasado
http://.......?clave1=valor1&clave2=valor2
Request.QueryString.Count sería 2, pero ya no tienes el valor de clave3 y ahí, es cuando obtienes el error al intentar asignar su valor a una variable.
Un saludo.