2010-04-21 5 views
0
private void btnUpdate_Click(object sender, RoutedEventArgs e) 
{ 
    xxxxxxx.Workflow1_WebServiceSoapClient zer = new xxxxx.Workflow1_WebServiceSoapClient(); 
    zer.demanderSubmitReportCompleted += new EventHandler<xxxxxxxxxxxxxxx.demanderSubmitReportCompletedEventArgs>(service2); 
    zer.demanderSubmitReportAsync("zzz", 20000); 
} 

public void service2(object sender, xxxxx.demanderSubmitReportCompletedEventArgs e) 
{ 
    string a = e.Result; 
} 

J'essaie d'appeler un Windows Workflow Foundation publié en tant que service Web à partir d'un projet Silverlight. Quand je l'appelle à partir d'une application de console cela fonctionne bien parce que je peux ajouter une référence Web alors je fais juste une instance de ce webservice puis j'appelle la méthode que je veux. Le problème est dans le projet Silverlight parce que je peux juste ajouter une référence de service donc je me retrouve à travailler avec du matériel SOAP qui ne fonctionne pas du tout, et voici l'erreur de code:Silverlight et Windows Workflow Foundation

Voici le code: Je le change un petit peu en anglais.

Error in exécution Microsoft JScript: Unhandled Error in Silverlight Application exception happened in the operation, résult not valide. Consult InnerException for more information. in System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() 
    in AEDSilverlightIntegrated.ServiceReference2.demanderSubmitReportCompletedEventArgs.get_Result() 
    in AEDSilverlightIntegrated.SilverEntryAedHeaderNew.mmm_demanderSubmitReportCompleted(Object sender, demanderSubmitReportCompletedEventArgs e) 
    in AEDSilverlightIntegrated.ServiceReference2.Workflow1_WebServiceSoapClient.OndemanderSubmitReportCompleted(Object state) 

Répondre

0

Commençons par le commencement. Assurez-vous que le service expose un cross-domain policy file pour permettre à Silverlight d'effectuer l'appel entre domaines.

Ceci n'est requis que si le service est sur un domaine différent de la page hôte Silverlight.

+0

i a ajouté le fichier de domaine croix, mais cela ne fonctionne pas: ! user298549

2

Eh bien, j'ai trouvé une solution et je veux la partager avec vous tous. La solution consiste à créer un service Web qui fonctionne comme un pont entre Windows Workflow Foundation publié en tant que service Web et une application Silverlight. Pas si génial, mais cela résout le problème.

Questions connexes