2011-04-08 3 views
2

J'ai créé une application simple silverlight en utilisant le service WCF .. Mon service a bien créé et je teste également le service WCF avec l'aide de wcftestclient cela fonctionne bien .. Je donne un service référence à Silverlight aussi, mais quand je cours l'application Silverlight je ne peux pas obtenir le résultat.Mon application silverlight ne peut pas appeler le service WCF

ici est le code silverlight

void getdatacs(object sender, ServiceReference1.GetDataCompletedEventArgs e) 
    { 
     MessageBox.Show(e.Result); 
    } 
    private void button1_Click(object sender, RoutedEventArgs e) 
    { 
     ServiceReference1.Service1Client cs = new ServiceReference1.Service1Client(); 
     cs.GetDataCompleted += new EventHandler<ServiceReference1.GetDataCompletedEventArgs>(getdatacs); 
     cs.GetDataAsync(Convert.ToInt32(textBox1.Text)); 
    } 

et voici mon code WCF

public string GetData(int value) 
    { 
     return string.Format("You entered: {0}", value); 
    } 

tout organisme peut me dire y je ne peux pas obtenir le résultat.

+0

Avez-vous une exception? – tomasmcguinness

+0

no. je cours l'application SL il attend rien ne se passe en bas du navigateur dit Connection to localhost ... – Raj

+0

Avez-vous essayé d'appeler la méthode Synchronously? Le service est-il en cours d'exécution pendant que vous utilisez Silverlight? – tomasmcguinness

Répondre

0

Le service est-il hébergé séparément de l'application SL? Si c'est le cas, vous devrez peut-être ajouter un fichier clientaccesspolicy. voir this link for details

0

Le code semble correct alors je commencerais à regarder la configuration du service WCF. Vérifiez tous les paramètres dans votre référence au service WCF. Je crois que votre problème n'est pas dans le code mais ailleurs. Essayez de supprimer la valeur int d'entrée au service WCF et renvoyez n'importe quelle valeur dans la chaîne pour éliminer la possibilité d'un problème d'entrée, même si cela semble correct.

J'ai rencontré des problèmes comme celui-ci et il se trouve normalement dans la configuration du service WCF.

+0

J'ai regardé un de mes projets et j'ai cette ligne de code au-dessus de la ligne de classe publique dans mon service WCF [AspNetCompatibilityRequirements (RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] –

Questions connexes