2010-12-13 101 views
0

Nous avons une application Web qui contient des méthodes Web. Je souhaite invoquer l'une de ces méthodes à partir d'une application de console. Je suis nouveau à ceci mais j'ai écrit une application de console, ai ajouté une référence de service et ai essayé de coder l'invoquant. Si ma méthode Web s'appelle "Transmit", je m'attendais à voir Transmit dans l'espace de nommage que j'ai spécifié mais à la place je vois "TransmitRequest", "TranmsitRequestBody", "TransmitResponse" et "TransmitResponseBody".Consommation du service Web depuis l'application de la console

Quelles sont ces choses? Ai-je fait quelque chose de mal? Comment appeler la méthode Web dans l'application Web à partir de l'application de console?

Merci pour toute aide à ce débutant. J'utilise VB.net 2008.

+0

Vous devez spécifier la langue/plateforme dans vos tags. Je suppose que vous utilisez .NET, mais sachant que cela affectera certainement les réponses que vous obtenez. – Jason

+0

Oui, désolé. Je code sur VB.net pour l'application console et sur VB asp.net pour l'application web. Pouvez-vous aider? – DeveloperM

Répondre

1

Si vous développez le dossier ServiceReference dans solutionExplorer, double-cliquez sur votre service et il devrait ouvrir l'explorateur d'objets. Maintenant, vous verrez la classe (celle sans l'infront). Dans votre code, vous serez alors instancier une nouvelle variable avec le [ServiceReferenceName]. [ClassName] à savoir

Dim svc as new ServiceReference1.MyWebService(); 
svc.Transmit(); 
+0

Merci d'avoir répondu. Le problème est que je ne vois pas de méthode "Transmit" sous le nom du service. Je vois "Body" et certaines fonctions de base comme "ToString", "GetType", etc. Pourquoi ne vois-je pas la méthode Transmit? – DeveloperM

+0

Cela signifie que le service n'est pas configuré correctement côté asmx (les méthodes doivent être marquées avec l'attribut [WebMethod] ou que votre classe proxy n'est pas générée correctement.) Sélectionnez ServiceReference dans l'explorateur de solutions et en haut de l'explorateur de solutions cliquez sur Afficher tous les fichiers.Vous devez avoir un fichier avec l'extension WSDL? Rechercher la méthode Transmit à l'intérieur et laissez-moi savoir si vous pouvez le voir –

+0

Les méthodes sont marquées avec Lorsque je développe la solution Explorer en affichant tous les fichiers, je fais voir un fichier avec l'extension wsdl Cependant, toujours pas de méthode Transmit – DeveloperM