2009-09-08 10 views
2

J'ai récemment commencé à développer Silverlight. Jusqu'à présent, j'ai réussi à créer une seule vue Silverlight XAML qui extrait les données d'une base de données SQL Server à l'aide de ADO.Net Entity Framework et affiche les données dans un DataGrid Silverlight. Je peux également effectuer des fonctions d'édition et de mise à jour simples sur les données et les conserver dans la base de données. À ce stade, ma compréhension échoue. D'après ce que je comprends, l'application client Silverlight est hébergée dans une application Web ASP.NET ou ASP.Net MVC. Normalement, je construirais simplement un site Web en utilisant ASP.Net MVC et j'utiliserais quelques contrôles jQuery, etc., pour pimenter l'interface sur chaque vue. Comment puis-je utiliser ces différentes vues Silverlight XAML que je crée dans mon application ASP.Net MVC comme si elles étaient des vues MVC? Ai-je complètement manqué quelque chose ici?Comment utiliser les vues Silverlight XAML comme si elles étaient des vues MVC

Répondre

2

RIA Modèles

Il existe deux modèles différents pour l'intégration de Silverlight (ou toute autre technologie de RIA) dans votre site web:

  • application Silverlight Tout hébergé sur le site simple,
  • contrôles Silverlight intégrés dans un site Web avec une autre interaction (formulaires, jQuery, etc.)

L'un ou l'autre modèle fonctionne bien, c'est à vous de décider qui fonctionne le mieux dans votre scénario.

communication avec le serveur Silverlight

Votre application Silverlight est un plugin hébergé dans un navigateur, il est donc préférable de penser comme jQuery ou tout autre code côté client. Il y a plusieurs façons de communiquer au serveur:

Silverlight prend en charge WebClient et HttpWebRequest Ainsi, vous pouvez obtenir un niveau aussi bas que vous le souhaitez dans votre communication client-serveur. Je recommande vraiment de regarder RIA Services car il gère non seulement les communications, mais aussi les règles de validation.

intégration Silverlight avec HTML/Javascript

Silverlight peut appeler et d'être appelé à partir Javascript via le HTML bridge. Cela signifie que vos composants Silverlight peuvent être aussi étroitement intégrés à votre page Web que vous le souhaitez. Silverlight peut également interagir directement avec les valeurs de formulaire et de lecture du formulaire DOM, modifier les propriétés CSS, etc. Vous pouvez faire à peu près tout ce que vous feriez en Javascript via le pont HTML si vous le souhaitez.

0

Pour mettre à jour votre modèle de données à partir de votre application Silverlight (qui s'exécute sur la machine de votre client), utilisez WCF (Windows Communication Foundation). Votre application Silverlight communiquera avec votre serveur à l'aide de WCF, et rien de tout cela n'a vraiment quelque chose à voir avec la façon dont vous diffusez votre application Silverlight (que vous utilisiez Webforms ou MVC).

+0

Est-ce que cela devient sans importance que votre hébergement de l'application dans ASP.Net ou MVC?- Et essentiellement, il devient simplement un site Web basé sur Silverlight? – Goober

+0

Ceci est fondamentalement correct. Vous pouvez penser à Silverlight comme Flash. Flash est à peu près juste chargé dans une page Web, mais il n'est pas vraiment connecté à la page Web de toute façon (dans la plupart des cas de toute façon). L'application Silverlight est essentiellement autonome. – TehOne

+2

Je ne suis pas d'accord - vous pouvez utiliser les vues MVC pour fournir des informations basées sur REST à un contrôle Silverlight, tout comme vous le feriez pour les composants côté client Javascript/jQuery. Silverlight est autonome, mais comme il peut communiquer à la fois avec votre serveur et avec l'autre HTML sur la page (via le pont DOM), il peut être aussi étroitement intégré à votre site que vous le souhaitez. –

Questions connexes