bonsoir !
J'aimerais savoir si il y a une méthode élégante pour injecter du code de pré exécution avant chacune des méthodes d'un service WCF.
Quelque chose dans ce gout la :
merci :)Code:
1
2 if (Membership.GetUser() == null) raise new Exception()
Version imprimable
bonsoir !
J'aimerais savoir si il y a une méthode élégante pour injecter du code de pré exécution avant chacune des méthodes d'un service WCF.
Quelque chose dans ce gout la :
merci :)Code:
1
2 if (Membership.GetUser() == null) raise new Exception()
la décoration de classe en somme...
fait une recherche directement dans General dotnet ou C# sur Decoration de classe pour voir si tu trouve quelque chose, mais je me souviens avoir vu passé des sujets similaires il y a quelques mois.
Tu peux aller voir du côté de PostSharp. C'est un outil qui modifie l'assembly après la compilation en injectant du code MSIL en fonction d'attributs que tu mets sur tes classes ou méthodes. J'avais testé vite fait, ça a l'air assez puissant. Tu peux même définir tes propres attributs en spécifiant le code qui sera injecté.
http://www.postsharp.org/
c'est une espèce d équivalant spring.net/entrepriselib ?
D'ailleurs je vais ptetre regarder dans ces lib plus connu si elle le fond.
Effectivement à mon avis c'est plus dans les cordes de la programmation orientée aspect (AOP Programming).
ASPECTDNG par exemple pour .NET.
J'avais fais un article à ce sujet.
J'espère que ça pourra t'aider dans tes recherches.
Je fais ce genre de choses en WCF avec postsharp. Par exemple, je fais toute la gestion des faults WCF en un endroit. J'encapsule les business et technical exceptions qui se produisent dans les couches inférieures du service. De cette manière, je n'ai pas de code de gestion d'exception dans la facade (le service WCF) tout en étant sûr que les exceptions sont bien encapsulées dans des faults.
EDIT : PostSharp est bien plus intuitif à l'utilisation et l'auteur (Gael Fraiteur) est très réactif quand une question est posée sur le forum dédié à PostSharp.
oui depuis je me suis mis à utiliser postsharp
Une petite merveille ce framework, je redécouvre le .net :)