enregistrement de httpModules dans web.config

J’essaie d’enregistrer un HttpHandler personnalisé dans le fichier web.config. L’ exemple de MSDN montre une entrée commentée … qui ne fonctionne pas très bien. Lorsque je ne commente pas, je reçois un Could not load file or assembly 'HttpModule.cs' or one of its dependencies. The system cannot find the file specified. Could not load file or assembly 'HttpModule.cs' or one of its dependencies. The system cannot find the file specified. Erreur. Le nom du fichier est HttpModule.cs et le nom de la classe est MyHttpModule. Il n’y a pas encore d’espace de noms explicite.

    

Je suis sûr que je néglige l’évidence. Dois-je spécifier le chemin du fichier quelque part? Merci d’avance.

J’apprends encore beaucoup de la terminologie et il me fallait la préciser. Si vous avez besoin de la même chose …

Par exemple si:

  • Le nom de la classe de base et le nom du projet est TestSite
  • L’espace de nom dans lequel ma classe se trouve est BusinessLogic
  • Le nom de la classe est PageAuthorization

dans le fichier Web.config …

        

Dans mon cas, je devais marquer ma classe avec IHttpModule . La définition de la classe ressemblerait à ceci:

 public class PageAuthorization : IHttpModule 

La valeur de type est au format {Class}, {assembly} .

Donc, dans votre cas, cela devrait être MyHttpModule, MyDllName

MyDllName est le nom de la DLL compilée.

Si vous chargez le module personnalisé à partir du mode classique .NET 4.0 GAC et IIS 6/7, vous devez utiliser le code ci-dessous.

       

ClientServHttpModule est un espace de noms de votre module personnalisé. Jeton de clé publique que vous pouvez obtenir à partir de l’application sn.exe.

si vous utilisez le mode intégré. utilisez ci-dessous le code

      

Pour append à cela, il est important de vous assurer que le fichier .dll que vous essayez d’utiliser se trouve dans le dossier bin du projet. J’ai eu le problème de faire mon module dans un projet séparé, mais en oubliant de déplacer le fichier .dll.

Remarque pour les personnes qui débarquent ici à la recherche d’une configuration pour IIS 7 et versions supérieures fonctionnant en mode intégré: