J'ai la description de mes services d'application en utilisant mes classes de fantaisie (de ServiceDescription classe qui contient la collection de Description ServiceMethod, pour simplifier).Propager Application Service comme service WCF
Maintenant, je veux exposer un service d'application en tant qu'un service de WCF (un contrat). La solution actuelle est très boiteuse - J'ai une application console qui génère un fichier * .svc pour chaque service d'application (ServiceDescription). Il existe une méthode (opération) générée pour un ServiceMethod.
Cela fonctionne bien mais je voudrais l'améliorer. Il pourrait être amélioré en utilisant le modèle T4 mais je suis sûr qu'il y a encore mieux dans la WCF. Je voudrais toujours avoir un fichier * .svc pour un service d'application mais je ne veux pas générer de méthodes (pour les méthodes de service d'application correspondantes). Je suis sûr qu'il doit y avoir des interfaces qui permettent de découvrir les opérations dynamiquement, au moment de l'exécution. Peut-être IContractBehavior ...
Merci.
EDIT1: Je ne veux pas utiliser un contrat d'exploitation générique parce que je voudrais avoir la capacité de générer proxy de service avec toutes les opérations.
Je suis sûr que si j'écris manuellement le service et les opérations WCF, alors WCF utilise la réflexion pour découvrir les opérations dans le service. Maintenant, je voudrais personnaliser ce point afin de ne pas utiliser de réflexion, utilisez plutôt mon "code de découverte d'opérations".
Nous vous remercions de votre réponse. Je travaille sur une application intranet, je gère des serveurs et des clients, et j'ai des tests d'intégration qui vérifient que les clients et les serveurs à déployer sont à jour. J'espère donc que cette approche dynamique est acceptable dans mon cas. Je ne veux pas utiliser le contrat d'opération générique parce que je voudrais avoir la capacité de générer un proxy de service avec toutes les opérations. Je suis sûr que si j'écris manuellement le service et les opérations de WCF, alors WCF utilise la réflexion pour découvrir les opérations dans le service. Maintenant, je voudrais personnaliser ce point afin de ne pas utiliser la réflexion. – Augi