2011-01-16 2 views
1

Je suis en train de refaire un jeu Console, que mon boss a fait il y a très longtemps, dans Silverlight. C'est entièrement basé sur le texte. Dans la version Console, chaque ordinateur qui l'avait installé avait sa propre carte, qui était divisée en une grille de pièces.Données globales de l'application Silverlight

Ce que je veux faire est de rendre la carte globale; quand quelqu'un court la version Silverlight, ils verront tous la même carte. Il n'y a pas de changement qui se passe sur la carte, seules les nouvelles pièces sont ajoutées à la carte. Donc, actuellement je stocke toutes les données dans IsolatedStorage, ce qui n'est évidemment pas global. Comment dois-je stocker les données et les récupérer afin que tout le monde puisse voir la même carte?

Si cela est utile, le serveur sur lequel il sera hébergé est un serveur Linux et MySQL.

Répondre

2

Voir cette réponse à une personne qui essayait de faire quelque chose de très similaire (il voulait des données haut score, vous voulez des données cartographiques): High Scores self contained in .xap

Le fait que vous utilisez un serveur linux complique les choses un peu - Au lieu d'exécuter un service WCF ou asmx, vous pouvez envisager un service Web Java, ou simplement créer une page HTTP normale qui interroge la base de données MySQL et renvoie les données que votre application Silverlight peut demander et consommer (il s'agit toujours d'un "service web" , quoique très primitif).

+1

Vous pouvez probablement utiliser Mono pour exposer un service Web, qui devrait ressembler beaucoup à ASMX (si je me souviens bien de la prise en charge du service Web Mono). Vous n'obtiendrez pas les services WCF ou WCF RIA, mais cela pourrait être mieux que d'utiliser PHP ou quelque chose qui a un plus grand écart avec .NET. Le point important est que les données "globales" doivent être sur un serveur quelque part pour le partager, ce que cette réponse indique correctement. Gardez à l'esprit comment votre application va actualiser ces données ou être averti des changements, et tout cela - tout cela sera asynchrone, donc peut être un peu difficile en fonction de ce dont vous avez vraiment besoin. –

Questions connexes