2009-09-22 7 views
5

Existe-t-il un moyen d'intégrer un serveur Web ou d'autres moyens dans une application .NET afin que l'interface graphique puisse être présentée comme une application Silverlight? Actuellement, nous avons une application client/serveur. Nous utilisons des sockets pour communiquer et transmettre des messages d'avant en arrière. Une pensée était de retravailler cela comme une solution Silverlight. L'utilisateur pointerait simplement son navigateur sur le serveur sur un port spécifique et serait connecté.Hébergement de Silverlight sans IIS

Je pourrais utiliser IIS pour servir le Silverlight (XAML) mais j'espérais qu'il y avait une autre façon de le faire en embarquant un serveur web ou quelque chose comme ça.


EDIT - De plus explaination:

Nous avons décidé de construire la nouvelle version de l'application WPF, mais sont nouveaux à Silverlight WPF &. Traditionnellement, nous aurions construit ce type d'application en utilisant un service Windows sur le serveur et une application Windows Forms sur le client et chacun communiquerait via des sockets. Par "ce type d'application" je veux dire un service Windows qui traite "truc" et une application client qui vous permet de configurer le serivce et d'afficher son état actuel etc. Je pensais qu'au lieu de construire la couche socket et d'analyser les messages , car ils vont et viennent entre le client et le serveur, nous pourrions être en mesure de construire une application Silverlight et avoir l'utilisateur simplement se connecter au serveur via leur navigateur. Cela signifierait que je n'ai pas eu à installer une application cliente (autre que Silverlight) et supprimer la couche de communication. Le crinckle est que je voudrais enlever la dépendance sur le serveur ayant IIS et toute configuration que nous pourrions devoir faire à IIS.

Peut-être que je regarde tout faux ... pourrait être ma « nouveauté » à WPF/Silverlight/XAML


+0

Si vous utilisez l'application de toute façon locale, pourquoi ne pas utiliser WPF? Existe-t-il une contrainte pour le chargement de .NET 3.5 sur vos machines cibles? –

+0

L'application n'est pas exécutée localement ... c'est une application serveur avec un client de bureau pour configurer et surveiller. –

Répondre

4

Silverlight est juste une norme HTML <object> afin qu'il puisse être livré par tout ce qui servira HTML. Cependant, cela semble être une architecture étrange pour une solution client/serveur. Pour ce que vous décrivez, je regarde soit:

  • Silverlight hors navigateur demande
  • application WPF livré via ClickOnce
  • application Silverlight qui est chargé à partir d'un site Web, mais communique avec votre backend existant utilisant Silverlight's socket support

Pouvez-vous expliquer pourquoi vous envisagez de créer un serveur personnalisé au lieu de l'une des approches ci-dessus?

+0

Merci pour vos suggestions, j'ai ajouté un peu plus de détails à la question qui pourrait aider à clarifier pourquoi je pose cette question. –

+0

Merci. Pourquoi ne voulez-vous pas exécuter IIS? Vous pouvez héberger une application Silverlight sur n'importe quel serveur web, si c'est le système d'exploitation/licence - Apache, etc. –

1

ne .NET fournir la plomberie nécessaire pour implémenter un serveur HTTP sans difficulté extrême .

Voici un tel exemple code project.

1

Si je comprends bien vos besoins, un Silverlight 3 hors navigateur application vous donnera le meilleur des deux mondes:

  • facile à installer
  • facile à pousser à des utilisateurs
  • peut être lancé à partir de la barre de démarrage/raccourci du bureau
  • peut fonctionner en mode déconnecté (ils l'appellent état détaché), donc si votre serveur est en panne, vous pouvez avertir les utilisateurs via l'application locale, plutôt que de naviguer vers l'URL SL en ligne et obtenir a 404.
  • stockage local
  • facile à pousser les mises à jour de l'application sur
Questions connexes