2010-09-16 1 views
2

Je souhaite mettre à jour les références de service dans une solution Visual Studio 2010 à l'aide de SVCUtil, car cette solution contient plusieurs projets et il n'est pas recommandé d'actualiser les références une par une. Je voudrais connaître votre point de vue, car je dois être sûr que je vais exécuter exactement la même commande que celle effectuée par Visual Studio 2010, ou même si Visual Studio 2010 n'utilise pas SVCUtil, un commande équivalente au comportement d'IDE.Paramètres de commande équivalents SVCUtil "update service reference"

Merci beaucoup.

Répondre

1

Certains google here et here montrent les paramètres sur VS 2008, bien que cela dépendra bien sûr de vos options dans les options avancées de l'assistant Ajouter une référence de service.

Edit: Agreed - N'ayez jamais peur d'abandonner et de recréer des références de service à partir de zéro. Lorsque vous travaillez avec le contrôle de version comme TFS, les références de service "mise à jour" sont souvent désordonnées car elles indiquent quels fichiers wsdl, xsd et disco etc ont été changés, ajoutés ou supprimés etc (et ont des noms de fichiers comme SomeXSD92.xsd). Généralement, il est plus rapide de simplement les laisser tomber et les recréer.

Le message de Johan est un bon point (et peut être utilisé dans le cadre d'un modèle de conception standard appelé Service Agent qui gère l'implémentation du proxy client). Je ne suis pas tout à fait sûr de ce que vous voulez dire quand vous dites que deux niveaux devraient référencer le même assemblage? Si vous partagez le type des entités appelées dans le service, vous devrez référencer l'assembly d'entité dans la plupart des niveaux. Pour votre projet d'assembly Service Agent (qui contient toutes les références de service), vous pouvez soit réexposer le même contrat de service utilisé par le serveur WCF, soit l'intégrer dans une nouvelle interface.

+0

Merci pour votre réponse. Je ne suis pas sûr que ce soit ce dont j'ai besoin pour faire cette mise à jour de référence. J'ai trouvé avant votre premier lien, le second est une bonne information, mais de toute façon, je ne veux pas "ajouter une référence de service" mais "mettre à jour la référence du service". Peut-être que je me trompe, mais il est possible que la mise à jour soit comme laisser tomber et recréer tout, n'est-ce pas? –

+0

Désolé pour mon retard. –

+0

Désolé pour mon retard. Je suis actuellement en train de résoudre cela avec VS Automation (EnvDTE) qui est plus élégant et assure que les références de service sont mises à jour exactement en utilisant la même commande VS levée à partir de l'interface utilisateur. –

2

La manière la plus simple d'actualiser un grand nombre de références de service consiste à les mettre dans un projet dédié. Référence ce projet de tous les projets qui ont besoin de les utiliser. Si une référence de service doit être mise à jour, vous le ferez en un seul endroit.

+0

Bon, je crois que c'est une bonne solution! Je vous remercie! Quoi qu'il en soit, le problème est que si vous avez une infrastructure client-serveur, vous ne pourrez pas le faire, car vous ne voulez pas qu'un projet ait des dépendances pour les deux niveaux. –

Questions connexes