L'un des moyens consiste à utiliser la méthode :
HttpResponse.RemoveOutputCacheItem("/Home/About");
Une autre méthode est décrite ici : http://aspalliance.com/668
Je pense que vous pourriez mettre en œuvre la deuxième méthode en utilisant un attribut de niveau méthode pour chaque action que vous souhaitez et en y ajoutant simplement la chaîne représentant la clé. C'est si j'ai bien compris votre question.
Edit : Oui, l'OutputCache d'asp.net mvc est juste une enveloppe.
Si vous utilisez varyByParam="none"
alors vous invalidez juste "/Statistics"
- c'est si <id1>/<id2>
sont des valeurs de chaîne de requête. Cela invalidera toutes les versions de la page.
J'ai fait un test rapide et si vous ajoutez varyByParam="id1"
et ensuite créer plusieurs versions de la page - si vous dites invalider invalider invalider "/Statistics/id1"
cela invalidera uniquement cette version. Mais vous devriez faire d'autres tests.