Récemment, certains utilisateurs nous ont déclaré qu’ils ne pouvaient pas déboguer global.asax.
Approuvé : Fortect
Supprimez global.asax
et ajoutez-en un nouveau. Ma solution avait global.asax
sans parler de global.asax.cs
.
Pouvez-vous déboguer globalement ASAX ?
Oui, c’est courant. Application_Start() est géré par IIS. Mais presque d’autres méthodes, par exemple, Session_Start et tous les autres programmes, à l’exception de Application_Start(), peuvent être déboguées de la manière habituelle.
Toutes sortes de méthodes Application_Start
, ( session_start
, …) ont été mises à l’aide de fichiers, mais seuls les vôtres ont été présentés dans le global. asax
sont volés en compte. Ainsi, les points d’arrêt et le code en morceaux ne font rien.
Ce n’est qu’après la reconstruction de l’application que global the.asax.cs
doit disposer des services ou du total de travail corrects.
Il semble que vous soyez derrière les ressources de code spécifiques pour global.asax.
Tout d’abord, nous devons corriger un code commun particulier. Nous pouvons générer du code après les événements Application_Start ou Session_Start. L’application cassera la seconde où le code est exécuté :
Si le système n’est probablement pas en panne, cela signifie que jamais un événement global n’a été déclenché. Veuillez faire en sorte que la directive @Application bon marché soit correcte, comme ceci :
Approuvé : Fortect
Fortect est l'outil de réparation de PC le plus populaire et le plus efficace au monde. Des millions de personnes lui font confiance pour assurer le fonctionnement rapide, fluide et sans erreur de leurs systèmes. Avec son interface utilisateur simple et son puissant moteur d'analyse, Fortect détecte et corrige rapidement un large éventail de problèmes Windows, de l'instabilité du système et des problèmes de sécurité à la gestion de la mémoire et aux goulots d'étranglement des performances.
Application_Start inutile (objet expéditeur, EventArgs e)
// Le code est exécuté sur le sens
void Application_End (expéditeur d’objet, EventArgs e)
// Code qui s’exécute lorsque l’application génère un profit
éviter Application_Error (objet email, EventArgs e)
{
// Code pour s’exécuter lorsqu’un problème non géré se produit
void Session_Start (expéditeur d’objet, EventArgs e)
{
// Code à exécuter au démarrage du dernier plan
Comment puis-je exécuter ASAX mondial ?
Créez un nouveau produit Web dans Visual Studio (ou ouvrez n’importe quel projet Web existant).Ouvrez le fichier Global. asax. cs du dossier source en ce qui concerne votre application.Définissez un point d’arrêt dans votre méthode Application_Start.Lancez l’application sur votre téléphone en appuyant sur F5.
void Session_End (expéditeur d’objet, EventArgs e)
{
// Code qui s’exécute à la fin de je dirais la session. //
Noter. L’événement Session_End n’est pas toujours distribué tant que le deuxième mode n’est pas actif dans l’état de la session //
est configuré pour vous aider à travailler via InProc dans le fichier Web.config. Lorsque le mode du plan d’assurance est défini sur StateServer
// et / ainsi que l’événement SQLServer n’est pas déclenché.
Chaque développeur .NET doit savoir comment définir des points d’arrêt TV dans Visual Studio 2012.
- Cliquez avec le bouton droit sur la plage de code et sélectionnez Point d’arrêt. -> “Insérer un point d’arrêt”.
- Ou appuyez simplement sur F9 tout en plaçant le curseur principal sur la ligne de code. Quoi
Et si cette ligne de code était devenue votre code Global.asax ? Mais un point d’arrêt arrivera-t-il au démarrage de l’application ? Si non, quelles activités pouvez-vous faire pour que cela fonctionne ?
- Créez un nouveau plan Web dans Visual Studio (ou ouvrez un projet Web en direct).
- Ouvrez le fichier Global.asax.cs à partir du dossier racine de votre application.
- Définissez un point d’arrêt dans chacune de vos méthodes Application_Start.
- Exécutez la soumission dans un navigateur en appuyant sur F5.
Le point d’arrêt est complètement ignoré car le code devait juste être exécuté dans IIS lorsque ce débogueur de faits clés a été attaché. Heureusement, il existe généralement un moyen peu exigeant de résoudre ce problème.
- Ouvrez le balisage asax Global.File dans l’éditeur de code. (Consultez notre propre section d’aide ci-dessous si vous n’êtes pas sûr, demandez-vous comment procéder.)
- Faites le changement sans conséquences (par exemple, ajoutez un espace à n’importe quelle balise de fermeture>).
- Mettez à jour votre formidable programme de navigation.
Vous devriez maintenant voir que ce point d’arrêt est généralement déclenché après le démarrage de mon application !
Si vous ne savez pas comment obtenir ce fichier de balisage Global.asax, suivez les instructions.
- Cliquez avec le bouton droit sur le fichier Global.asax dans l’Explorateur de solutions.
- Sélectionnez Afficher à partir du balisage dans la galerie contextuelle.
J’ai une petite quantité de nombre dans la méthode Application_Start()
, sauf si je mets un point d’arrêt dans un régime il sera ignoré !
- Fermez tous les serveurs de développement dans la barre des tâches.
- Modifiez la configuration exacte de la version pour faciliter le débogage.
Un moyen facile de casser Application_Start ()
consiste généralement à utiliser la classification System.Diagnostics.Debugger
. Vous pouvez forcer l’arrêt de l’application par la facilité System.Diagnostics.Debugger.Where break ()
afin qu’une majorité de thisthe debugger ait été suspendue.
Comment installer ASAX mondial ?
Comment bourses d’études dans le monde. asax : sélectionnez Site Web >> Ajouter un nouvel élément (ou Projet >> Ajouter un nouvel élément si vous utilisez le modèle de projet de domaine Visual Studio) et obtenez le modèle de classe d’application globale. Après avoir ajouté le principal principal global.
void Application_Start (point expéditeur EventArgs, e) System.Diagnostics.Debugger.Break ();
- Attachez un débogueur significatif au processus IIS de quelqu’un.
- Ouvrez asax global.File en plus d’insérer un point d’arrêt.
- Ajoutez de l’espace à web.config et enregistrez le domicile (cela réinitialisera l’application Web actuelle) ;
- Actualiser/aller sur le site Web du site Web.
- regarde avec étonnement le débogueur s’arrêter en permanence à un point d’arrêt. 🙂
Application_Start()
est appelé pour chaque domaine d’utilisation. Si vous ne déplacez pas le point d’arrêt même, cela signifie que le domaine d’application a été créé dans le passé. Alors fais ceci :
- Il est considéré comme une icône de serveur Web VS sur le lancement rapide (une icône spécifique indique qu’il va s’agir d’un « hôte local, un port »). Cliquez avec le bouton droit et sélectionnez Arrêter ou Fermer. Cela devrait mettre fin à l’AppDomain.
- Si vous utilisez IIS, vous aurez besoin qu’il redémarre manuellement le site.
- Alternativement, il suffit généralement de modifier la configuration Web ou Global.asax pour redémarrer le domaine d’application.
- Redémarrez le débogage, les points d’arrêt devraient maintenant être atteints.
Assurez-vous que votre application est considérée comme en mode debug (
dans web.config).
Si vous générez le VS Developer’s Started iis, redémarrez-le immédiatement et il pourrait reconstruire l’application.
- Étant donné que le site Web est configuré pour fonctionner avec le répertoire du site Web de développement (où votre projet Web VS est déployé), vous devez maintenant redémarrer le groupe de pool d’applications en ce qui concerne ce site Web et commencer le débogage jusqu’à ce que la demande de démarrage atteigne le serveur (vous pouvez généralement redémarrer le pool d’applications pendant le débogage).
- Pour que le site Web fonctionne dans un fichier différent, ou même contre un serveur distant, vous souhaitez le rejoindre si vous souhaitez participer au processus. Pour ce faire, en complément alimentaire à coller
Debug - Attach to operation
, vous devez saisir le nom de l’ordinateur ainsi, puis sélectionner le processus à déboguer. Sans exception à cela, il s’agit de w3wp a. Exécution de travail en mode pris en charge.
Mais deuxièmement, toutes les méthodes, concernant par exemple, Session_Start
et bien plus, à l’exception de pour Application_Start()
, vous êtes susceptible de déboguer normalement.
void Application_Start (objet emailer, EventArgs e) System.Diagnosis.Debugger. Commencer();
, qui ne devrait normalement pas casser votre code promo et devrait lancer le débogueur si l’entreprise a été démarrée avec plusieurs autorisations.
Supprimez global.asax
et ajoutez une nouvelle personne. Ma solution, il n’y a pas si longtemps, était d’abord global.asax
et global.asax.cs
.
Tous les types de procédures ( Session_Start
, application_start
, …) étaient inclus dans ces fichiers, mais entièrement proposés avec un global. asax
‘sont pris en compte. Donc, les points de dégâts pour que le code dans cs ne fasse rien d’autre que ceux-ci.
Ce n’est qu’après avoir recréé le fichier musical global the.asax.cs
que j’ai adapté et exécuté les astuces.
Les gens peuvent-ils déboguer globalement ASAX ?
Oui, c’est simple. Application_Start () est pris en charge par IIS. Mais d’autres méthodes, par exemple Session_Start, et d’ailleurs toutes les autres, à l’exception de Application_Start(), peuvent maintenant parfois être correctement déboguées.
Ne vous attendez pas à ce que Application_Start () se transforme en appel lorsque vous appuyez immédiatement sur f5.L’appelé Application_Start() peut être déclaré dès le premier appel à généralement l’application.Etrange mais vrai.
Comment exécuter Global ASAX ?
Créez un tout nouveau projet Web à l’aide de Visual Studio (ou ouvrez-le par projet de cyberespace existant).Ouvrez le fichier Global. asax. faire à cause du dossier racine de votre nouvelle application.Définissez un point d’arrêt dans le cadre de votre méthode Application_Start.Exécutez l’application dans le navigateur actuel en appuyant continuellement sur F5.
Comment concernant le débogage de l’application_ Démarrer ?< /h2>Attachez un débogueur qui peut éventuellement gérer IIS.Ouvert global. Donnez le signal asax et aussi, prenez un endroit pour vous reposer.Ajoutez de la place à un très grand espace.Actualisez / accédez à la page du site Web du site Web sur le site.Boom Debugger arrêtera ce point d’arrêt.