Con l'attributo VaryByParam puoi ottenere diverse versioni di una stessa pagina in cache, a seconda di quanto passato nella querystring o nel form (col post).
Ad es:

<%@ OutputCache Duration="1000" VaryByParam="CategoryID %>

Oppure puoi scrivere
VaryByParam="*"

così ogni variazione nella query string provocherà una nuova esecuzione della pagina nella cache.