begin process at 2012 05 28 10:03:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Web Services

 > 

Création d'un webservice

 > 

Services web asynchrones


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Services web asynchrones

mercredi 29 juillet 2009 à 01:22:37 | Services web asynchrones

Mayzz

Membre Club

Bonjour,

Voila j'ai quelques petits problème en ce qui concèrne la création de service web en mode asynchone.

En fait, déja j'y capte rien pour commencer (moi et le threading ca fé 2)

Pi en plus l'exemple de MSDN est trop cour, il ne disent même pas ou placer le code de la fonction en elle meme.

Et pour finir soit j'ai mal capté ou soit j'ai un souci avec mon VS car les codes trouvés un peu partout (les rares code), me demande de déclarer un objet qui, je pense doit être natif framework, car il n'est nullement fait allusion à une quelconque classe à créer ou référence externe, le problème c'est qu'après un F2 il n'existe pas dans ma solution ! Donc j'ai du raté une étape la...

Voici le code de ces messieurs de MS touvé sur cette page :

Code Visual Basic :
Imports System.Web.Services

<WebService(Namespace:="http://www.contoso.com/")> _
Public Class MyService
Inherits WebService
Public remoteService As RemoteService

Public Sub New()
MyBase.New()
' Create a new instance of proxy class for
' the Web service to be called.
remoteService = New RemoteService()
End Sub

' Define the Begin method.
<WebMethod()> _
Public Function BeginGetAuthorRoyalties(ByVal Author As String, _
ByVal callback As AsyncCallback, ByVal asyncState As Object) _
As IAsyncResult
' Begin asynchronous communictation with a different XML Web
' service.
Return remoteService.BeginReturnedStronglyTypedDS(Author, _
callback, asyncState)
End Function
' Define the End method.
<WebMethod()> _
Public Function EndGetAuthorRoyalties(ByVal asyncResult As _
IAsyncResult) As AuthorRoyalties
' Return the asynchronous result from the other Web service.
Return remoteService.EndReturnedStronglyTypedDS(asyncResult)
End Function
End Class


Public remoteService As RemoteService <== ce fameux remote service n'est présent dans aucune assembly du framework ! Alors allez savoir, j'ai bien tapé 'RemoteService' sur Google mais c'est comme taper 'String' vous ne tomberez pas que sur des site de développement


Pour ce qui est des autres exemples, il est fait allusion à Localhost:

localhost.UserInfoQuery() <= Mais Vs me dit:

- "Local quoi ?? jamais entendu parlé moi !"

Si quelqu'un a déja travailler avec des services web async un ptit coup de main serait pas du luxe , je seche completement !

Merci d'avance !

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

mercredi 29 juillet 2009 à 08:32:04 | Re : Services web asynchrones

PCPT

Administrateur CodeS-SourceS

salut Mayzz,

euh.... j'suis comme tenté de croire que localhost est un namespace "perso", avec RemoteService une class perso de ce namespace, non des références au framework

si on prend cet exemple :
http://msdn.microsoft.com/fr-fr/library/dwba7yy7(VS.80).aspx

Code Visual Basic :
remoteService = New localhost.RemoteService()

(attention à la casse??)

on a
Function EndGetAuthorRoyalties(...) As localhost.AuthorRoyalties
tout comme tu as
Function EndGetAuthorRoyalties(...) As AuthorRoyalties


enfin, c'est ce que j'en comprends ^^
et çà paraît logique ; ton webservice renvoie un objet (attendu) non?


NB : mais tout çà c'est pour un projet web

MSDN > MSDN Library > Langages et outils de développ... > (...) > Services Web XML avec ASP.NET > Comment : créer des méthodes de service Web asynchrones



le forum ASP serait plus approprié


mercredi 29 juillet 2009 à 08:51:44 | Re : Services web asynchrones

Mayzz

Membre Club

Effectivement PCPT ^^

' This imports the proxy class for the Web services
' that the sample communicates with.
Imports AsyncWS_VB.localhost



Mais il ne précise rien sur le sujet, en fait ils parlent d'une classe Proxy mais il disent pas comment l'obtenir, NameSpace perso ou pas ils pourraient le préciser, cela rend l'exemple incomplet

enfin, c'est ce que j'en comprends ^^
et çà paraît logique ; ton webservice renvoie un objet (attendu) non?



Bien en fait, non, pour mes fonctions je retourne une List(Of ClassMetierPerso) donc ca va. Le problème c'est que je ne peux déclarer le RemoteServive
et je but donc sur :

Code Visual Basic :
Return remoteService.BeginReturnedStronglyTypedDS(Author, _

callback, asyncState)


et :

Code Visual Basic :
Return remoteService.EndReturnedStronglyTypedDS(asyncResult)


Etant donnée que je n'arrive pas à déclarer un remoteservice. Enfin bon, j'ai cherché un peu partout (fr et eng) mais rien trouvé de valable, ya plus sur la conso que sur la création.

NB : mais tout çà c'est pour un projet web



Effectivement ^^ Un sercvice web pour un site chargé de retourné une liste de contact (et leurs catégorie) pour les fournir à mon application winform (le fameux client mail), y'a bien d'autres moyens de procéder, en se connectant à la base via SQL, Server mais je souhaite quand même passer par un service web car celui-ci sera configurable depuis le panneau de config du site. Mais tu as raison, j'aurais peut être du poster sur aspfr.

Merci encore :)

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

lundi 3 août 2009 à 11:10:17 | Re : Services web asynchrones

Mayzz

Membre Club
Réponse acceptée !

J'ai enfin trouvé la solution, donc je vais la poster ici !

Je présise avant tout, que mon but était de créer un service web asynchrone pour consommer celui-ci de la même façon.

Et je me suis en faite cassé le tête pour rien, il existe plusieurs méthodes pour la gestion asynchrone des webmethode,
Ce pendant ce n'est pas parce qu'une webmethode est crée de façon asynchrone qu'elle sera forcément consommé de la même manière.

Je ne vais pas entrez dans les détails, mais le plus simple est de créer une méthode synchrone dans le web service, et de publier celui-ci. Dans un deuxième temps, il faut ajouter notre référence de service dans notre projet qui va consommer ce service web, et dans les propriétés avancés, cocher la case "Générer des opérations asynchrones", Visual Studio (wsdl.exe) va générer une classe proxy avec des méthodes et des événement afin de consommer toutes les webmethodes de ce service en mode asynchrone.

Voici à quoi ressemble ces méthodes :

Ici nous devons déclarer une instance de notre référence web avec une gestion des événements.

Code Visual Basic :
Private WithEvents svc As New MonService.MonServiceSoapClient


Pour chaque méthode, Visual Studio à générer un événement MaMethodeCompleted, retournant un MaMethodeCompletedEventArgs, retournant le résultat de la méthode, et les exception qui se sont éventuellement produites.

Code Visual Basic :
Private Sub HelloWordCompleted (ByVal sender As Object, _

ByVal e As MonService.HelloWordCompletedEventArgs) Handles svc.HelloWordCompleted
MessageBox.Show(e.Result, "Terminé")
End Sub


Pour faire appel à la méthode, Visual Studio génère un Sub MaFonctionAsync

Code Visual Basic :
Private Sub Button1_Click() Handles Button1.Click

Call HelloWordAsync
End Sub


Voilou ! Ca peut toujours servir

@+ Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

lundi 3 août 2009 à 11:14:14 | Re : Services web asynchrones

Mayzz

Membre Club


Pour chaque méthode, Visual Studio à générer un événement MaMethodeCompleted, retournant un MaMethodeCompletedEventArgs, retournant le résultat de la méthode, et les exception qui se sont éventuellement produites.



Oulala !!! Comment que j'me s'exprime pas très bien !

Je voulais dire :

Pour chaque méthode, Visual Studio à générer un événement MaMethodeCompleted, passant en paramètres une classe MaMethodeCompletedEventArgs, retournant le résultat de la méthode et les exceptions qui se sont éventuellement produites.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.



Cette discussion est classée dans : public, web, code, service, remoteservice


Répondre à ce message

Sujets en rapport avec ce message

web service [ par verbeyst ] Bonjour,Je voudrais "générer"/ "écrire " un formulaire qui stocke le username et le passwd et qui appele un web service tout en passant ces valeurs en aspnet [ par verbeyst ] Bonjour savoir,Je voudrais savoir s'il existe un outil qui permette de générer des modèles de page web (graphiquement) et qui génère aussi le code CSS Projet : service web en asp.net [ par intGTR ] j'ai un projet à rendre le 1 avril et je rien faire j'usqua maintenantalors aidez moi SVP le sujet:Mise en place d'un service web pour l'enregistremen Charger dans ma page web une table depuis mon service web [ par sitirna ] Bonjour a tous 1-J'ai une table SqlServeur2005 qui contient 2 colonne ,une contient le titre de la photo et l'autre contient code binaire de la photo. Consommer un service web heberge sous Apache [ par onova ] Bonjour a tous,Je decouvre actuellement les services web, et je dois ds le cadre d'un projet "discuter" avec un service web heberge sur un serveur Apa Web Service VS2005 vs VS2008 [ par pierro01 ] Bonjour,J'ai un problème de Web Service.Voilà, j'ai un exe développé sous VS2005 (FrameWork 2) qui utilise un Web Service sur le site d'un fournisseur Accès à une dll par un webservice [ par JuNeau ] Bonjour,J'ai créé un site web comportant un webService, en utilisant Visual Web Developper 2008 (Express Edition) sous Vista. Le service web utilise u Web Service fonctionne sur le serveur web de VS2008 mais pas sur IIS7 [ par klassenj ] Bonjour, Je rencontre un problème de déploiement de mon service web sur IIs. Ce service web interroge une librairie C#, qui elle même fait de l'inter Appeler un web service hosté par une application web [ par Zoizoi ] Bonjour,J'ai une application web ASP.Net qui contient des web services.Je les appelle en interne en Ajax, ça marche bien.Je voudrais les appeler depui Linq difference entre valeur en base et valeur retournée [ par blackskiz ] Bonjour, Je travaille avec LINQ actuellement et je suis confronté au probléme suivant: Lorsque je modifie manuellement une valeur dans une table x e


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales