AJAX Service Using Complex Types, exemple
Cet exemple montre comment utiliser Windows Communication Foundation (WCF) pour créer un service AJAX (ASP.NET Asynchronous JavaScript and XML) qui créent des instances de types complexes et les envoient entre le service et le client au format JSON (JavaScript Object Notation). Vous pouvez accéder à un service AJAX en utilisant le code Javascript à partir d'un client de navigateur Web. Cet exemple est basé sur l'exemple Basic AJAX Service.
Remarque : |
---|
Cet exemple requiert l'installation de .NET Framework version 3.5 pour être généré et exécuté. Visual Studio 2008 est nécessaire pour l'ouverture des fichiers projet et solution. |
La prise en charge d'AJAX dans WCF est optimisée pour une utilisation avec AJAX ASP.NET via le contrôle ScriptManager. Pour obtenir un exemple d'utilisation de WCF avec ASP.NET AJAX, consultez Exemples AJAX.
Remarque : |
---|
La procédure d'installation ainsi que les instructions de génération relatives à cet exemple figurent à la fin de cette rubrique. |
Le service dans l'exemple suivant est un service WCF sans code spécifique à AJAX. L'attribut WebGetAttribute n'étant pas appliqué, le verbe HTTP par défaut ("POST") est utilisé. Le service a une opération appelée DoMath
qui retourne un type complexe appelé MathResult
. Le type complexe est un type de contrat de données standard qui ne contient pas non plus de code spécifique à AJAX.
[DataContract]
public class MathResult
{
[DataMember]
public double sum;
[DataMember]
public double difference;
[DataMember]
public double product;
[DataMember]
public double quotient;
}
Pour créer un point de terminaison AJAX sur le service, utilisez la liaison standard WebHttpBinding et le comportement <enableWebScript> dans la configuration du service, comme dans l'exemple Basic AJAX Service.
Le page Web client ComplexTypeClientPage.aspx contient du code ASP.NET et Javascript pour appeler le service lorsque l'utilisateur clique sur le bouton Perform calculation dans la page. Le code permettant d'appeler le service construit un corps JSON et l'envoie à l'aide de HTTP POST, comme dans l'exemple AJAX Service Using HTTP POST.
Une fois l'appel de service réussi, vous pouvez accéder aux membres de données individuels (sum
, difference
, product
et quotient
) sur l'objet JavaScript résultant.
function onSuccess(mathResult){
document.getElementById("sum").value = mathResult.sum;
document.getElementById("difference").value = mathResult.difference;
document.getElementById("product").value = mathResult.product;
document.getElementById("quotient").value = mathResult.quotient;
}
Pour configurer, générer et exécuter l'exemple
Assurez-vous d'avoir effectué la procédure indiquée dans la section Procédure d'installation unique pour les exemples Windows Communication Foundation.
Générez la solution ComplexTypeAjaxService.sln tel qu'indiqué dans Génération des exemples Windows Communication Foundation.
Naviguez jusqu'à https://localhost/ServiceModelSamples/ComplexTypeClientPage.aspx (n'ouvrez pas ComplexTypeClientPage.aspx dans le navigateur depuis le répertoire du projet).
Voir aussi
Tâches
Send comments about this topic to Microsoft.
© 2007 Microsoft Corporation. All rights reserved.