Il semble Comme vous avez démarré ce processus à partir d'un formulaire ASP.NET avec le code côté serveur faisant la boucle en réponse à quelque chose (soit le formulaire ASP.NET de chargement, ou en cliquant sur un bouton etc).
Notez que la fermeture de la fenêtre de votre navigateur n'arrêtera aucun processus de code à long terme que vous avez appelé sur le "serveur". Bien que cela fonctionne sur la même machine, le "serveur" ici est le processus IIS/Cassini qui sert votre page Web au "client" (votre navigateur). Pour arrêter ceci, vous devez arrêter/éteindre l'IIS ou Cassini (petit serveur Web de Cassini utilisé par Visual Studio lors de l'exécution d'une application web sur votre machine de développement locale), ou arrêter/arrêter SQL Server processus.
EDIT: J'ai noté les sous-cotations pour l'autre réponse que mentionne l'arrêt de IIS/SQL. Ceci, bien sûr, est un mécanisme de «dernier souffle» pour arrêter un processus de longue durée invoqué par le «client» mais s'exécutant sur le «serveur». Si cela devait être fait dans une "vraie" application, et que vous souhaitiez permettre à l'utilisateur d'annuler une application de longue durée, une approche telle que suggérée par Marc serait nécessaire (ie utiliser AJAX, "interroger" la page web avec AJAX "actualise" et répond à la saisie ultérieure de l'utilisateur (c'est-à-dire le clic sur le bouton)).
À quoi ressemble votre code? –