2009-04-15 6 views
0

J'ai un client Silverlight qui accède aux données via les services de données ado.net. Une de mes requêtes contient un certain nombre de clauses expand, et récupère un certain nombre d'entrées. La réponse XML est énorme, et je cherche des moyens de rendre cela plus efficace.Données utiles du service de données volumineuses (Astoria): comment améliorer les performances?

J'ai essayé:

  • Paging (pas une option pour ce comportement)
  • Http compression (certains PC clients sont en cours d'exécution IE6)
  • Faire les dilate des requêtes distinctes et se joindre à des entités plus tard (cela a amélioré un peu les choses)

Est-il possible d'utiliser JSON comme format de transport avec le client Silverlight? Je n'ai rien trouvé à ce sujet sur le web ...

Répondre

0

Bien. J'ai eu l'occasion d'en parler à Tim Heuer, qui est allé demander à Pablo Castro. Merci Tim! JSON ne peut pas être utilisé par le client Silverlight, mais Silverlight 3 utilise par défaut le langage XML binaire pour communiquer avec les services Web. Rawr.

Une autre chose que j'ai trouvée pour moi-même est que l'utilisation de l'expansion peut parfois générer beaucoup plus de données que l'exécution de plusieurs requêtes. Si vous enchaînez quelques requêtes ensemble, puis cousez les objets à la main, vous pouvez économiser un peu de xml.

1

Vous pouvez voir la démonstration de l'utilisation de JSON en silverlight dans le lien ci-dessous

http://timheuer.com/blog/archive/2008/05/06/use-json-data-in-silverlight.aspx

Je ne sais pas quel gain de performance est réalisé en utilisant JSON. Je me souviens très bien que les services ado.net font du JSON.

+0

Les services de données ADO serviront heureusement json à n'importe quel client. Silverlight utilisera heureusement json depuis n'importe quel serveur. Mon problème est que le client ADO.Net Data Services pour Silverlight semble être lié au format ATOM. –

Questions connexes