Silverlight : appel de services RPC (WCF ou Soap) en synchrone

Je me suis bien marré ce matin, ça fait du bien. J’étais en train de chercher un moyen de faire des appels en synchrone en Silverlight. Jusqu’à présent le pattern que nous connaissons tous est de s’enregistrer sur un event Completed puis de lancer l’appel, celui-ci se fait en asynchrone puis le retour de la méthode génère l’événement completed. Malheureusement je suis face à un cas, où je dois être en synchrone obligatoirement ; je travaille sur un player elarning en Scorm basé sur Silverlight. Le scorm utilise des méthodes (initialize, setvalue, getvalue, etc.) qui permettent de faire une communication … Continue reading Silverlight : appel de services RPC (WCF ou Soap) en synchrone

Sessions développement de jeux aux Tech Days 2010

Elles sont enfin en ligne.   Silverlight Game http://www.microsoft.com/france/vision/mstechdays10/Webcast.aspx?EID=b4074586-f818-4a35-924f-be6d1aa21c89 Zune HD http://www.microsoft.com/france/vision/mstechdays10/Webcast.aspx?EID=9176faf8-bed0-4c89-9ed6-728e9a9f689b Xna Prez http://www.microsoft.com/france/vision/mstechdays10/Webcast.aspx?EID=0340faaf-4dfc-4963-9a8b-eda4374f710d   Merci à Antoine Emond et Julien Frelat qui ont été à mes cotés durant ces sessions que j’ai adoré présenter.   Valentin

Développement d’un jeu en Silverlight

Hier, j’ai eu la chance de pouvoir, comme chaque année, donner des sessions aux Techdays sur le développement de jeux. Enfin … trois sessions dans la journée c’est quand même fatiguant… Quoi qu’il en soit la dernière session était assez interessante puisqu’elle liait Silverlight et Xna au travers des plateformes Xbox 360, Windows et Zune HD. J’avais pour but, avec l’aide de Julien Frelat -un passionné de dev de jeux sur Silverlight- de créer un jeu en moins de 40 min. Nous avons pratiquement reussi ! (si on avait parlé moins c’était dans la poche). Le jeu une fois terminé ressemblait … Continue reading Développement d’un jeu en Silverlight

Le WriteableBitmap avec Silverlight 3

Le WriteableBitmap est l’une des évolutions majeure de Silverlight 3. Il permet de repousser les limites d’affichage de Silverlight, cantonné jusque là au vectoriel, en donnant au développeur la possibilité de travail au niveau du Pixel. Avant Silverlight 3.0 la génération à la volée d’images n’était pas possible nativement. Il fallait soit télécharger l’image générée depuis un serveur soit créer son propre générateur/encodeur. Avec WriteableBitmap (qui hérite de BitmapSource) la génération d’images à partir d’algorithmes, de contrôles ou d’instruction est réellement un jeu d’enfant. Génération à partir d’un contrôle Quelques règles à prendre en compte : Le contrôle doit avoir … Continue reading Le WriteableBitmap avec Silverlight 3

Installation Silverlight 3.0 : The hash value is not correct.

Juste la honte pour Microsoft puisque c’est un bug connu déjà sous la 2.0 et qui n’est pas corrigé… Si votre connection au réseau Internet n’est pas “directe” (genre derrière un proxy) vous pouvez vous recevoir en pleine figure un “The hash value is not correct.” lors de l’installation de Silverlight 3.0. L’astuce pour contourner cette erreur est relativement simple. Faites tout d’abord une extraction de l’executable “Silverlight3_Tools.exe” à l’aide de la commande “Silverlight3_Tools.exe /x”. Genre dans un répertoire situé dans “c:\prout”. Téléchargez le developper runtime pour la 3.0 ici Silverlight.3.0_Developer.exe Placez cet executable dans le répertoire c:\prout qui contient déjà … Continue reading Installation Silverlight 3.0 : The hash value is not correct.

Ombre en Silverlight

Aujourd’hui pour faire une ombre sous un contrôle en Silverlight il n’y a pas beaucoup de possibilités. Le faire en vectoriel s’avère difficile et on a l’habitude de passer par une image PNG, ce qui n’est pas forcement le plus optimisé. Voici un simple code qui permet de corriger cela, et en vectoriel.  Vivement l’ajout d’effet en Silverlight pour eviter de passer par ce genre de tips…   <UserControl x:Class=”SmartInterface.TravelingPanel” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” xmlns:d=”http://schemas.microsoft.com/expression/blend/2008″ xmlns:mc=”http://schemas.openxmlformats.org/markup-compatibility/2006″ mc:Ignorable=”d” d:DesignWidth=”640″ d:DesignHeight=”480″ Width=”340″ Height=”340″ RenderTransformOrigin=”0.5,0.5″>   <Grid x:Name=”LayoutRoot”> <Grid.ColumnDefinitions> <ColumnDefinition Width=”*”/> </Grid.ColumnDefinitions>   <!– Six lignes qui cr‚‚ent un effet d’ombrage–> <Border CornerRadius=”16″ Margin=”-6″ BorderThickness=”1″ … Continue reading Ombre en Silverlight

Base de données School (sur laquelle sont basés les exemples)

Revenir au sommaire   Dans cet article nous installerons sous l’environnement de gestion de SQLServeur une base de données que nous utiliserons dans nos apprentissages.Vous devez disposer du SQL Server Management Studio ou du Sql Server Management Studio Express pour executer le code Transact-SQL affiché dans ce tutoriel.Après installation et verification de la base. Nous l’expliciterons quelque peu pour la comprendre et maitriser ses concepts.A noter que cette base est héritée de la base Microsoft du même nom utilisée pour les exemples de la MSDN sur laquelle j’ai réalisé quelques menues modifications.  Installation de la base Dans le menu Fichier/File … Continue reading Base de données School (sur laquelle sont basés les exemples)

ADO.Net Data Services : Introduction

ADO.Net Data Services Avec l’avènement des architectures distribuées, la prolifération des clients riches, qu’ils soient Desktop RDA (à base de Winforms ou WPF) ou RIA (ASP.Net AJAX ou Silverlight, Adobe AIR, …) montre le besoin en constante augmentation de systèmes d’échange de données complètements déconnectés de toute interface. Le Web 2.0 place d’ailleurs l’utilisateur au cœur du logiciel sensé le servir. Cette révolution dans la conception d’offres de services logiciels impose une architecture où là vue est indépendante de la donnée afin d’offrir à l’utilisateur une interface métier la plus riche et la plus puissante possible, elle impacte, en outre, … Continue reading ADO.Net Data Services : Introduction

Incompatibilité entre Silverlight 2b2 et Ado.Net Data Services avec le framework 3.5 SP1

L’installation du SP1 (VS 2008 SP1 et/ou framework 3.5 sp1) empêche les développements Software + Services entre Silverlight et ADO.Net Data services (Astoria). Deux bugs apparaissent :                                                                           Dans le cas où le Xap Silverlight se trouve sur le même domaine que les services Astoria vous optenez l’erreur suivante : “Aucun constructeur sans paramètre défini pour cet objet.”   {System.MissingMethodException: Aucun constructeur sans paramètre défini pour cet objet.   à System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)   à System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)   à System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)…    Dans le cas où Silverlight se trouve … Continue reading Incompatibilité entre Silverlight 2b2 et Ado.Net Data Services avec le framework 3.5 SP1

Pourquoi je m’oriente vers Silverlight

Depuis mes débuts en développement j’ai toujours fait du lourd. Entendez par là du client Lourd. A savoir du Winform principalement, de l’API Win 32 et  du Xna. J’ai commencé à aborder WPF il y’a deux ans. J’ai rapidement abandonné cette technologie estimant qu’elle n’avait pas un bel avenir devant elle. Je trouve qu’elle est extraordinaire et parfaitement bien conçue, mais elle ne répond pas au futur des besoins que demanderons les applicatifs dans les mois à venir. Avant SIlverlight 2.0 bx, le plugin de Microsoft etait plus un jouet qu’un outil professionnel. Il montrait avec force ce qu’allait être … Continue reading Pourquoi je m’oriente vers Silverlight