Principale entreprise française indépendante dédiée aux technologies Microsoft 12 ans d’expérience dans le conseil et la réalisation de projets à haute.

Slides:



Advertisements
Présentations similaires
Linq, fonctionnement et architecture
Advertisements

Comment Protéger les bases SQL avec System Center Data Protection Manager 2007.
Test et Développement Visual Studio Team System Eric Mittelette – Benjamin Gauthey – Yann Faure DevDays 2006 Equipé aujourdhui, prêt pour demain !
Microsoft Visual Studio Team Suite Dossier réalisé par Frédéric MOTHY et Eric LELEU – Mai 2007.
Mitsuru FURUTA Relations techniques développeurs Microsoft France
Construire une Set Top Box Avec Windows CE 6.0
Santé pubic Plan catastrophe Globalisation de léconomie Agenda vert Emissions Phénomène durbanisation Population viellissante Qualité de service Enjeux.
Trucs et Astuces { Visual Studio 2008 – VB 9 (C#3)} Grégory Renard CTO – R&I Manager Wygwam Microsoft Regional Director / Microsoft MVP
Damien Caro Architecte Infrastructure Microsoft France
Benjamin Soulier Technical Expert Cambridge Technology Partners Le meilleur des deux mondes - SharePoint 2010 et Azure!
Tests de performance et optimisation de vos applications
1 Quakelight : le making of Julien Frelat Chef de projet InnoveWare Solutions Code Session : RIA309.
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
Cette session suppose une connaissance préalable des grands principes de Workflow Foundation Nous parlerons très peu de lécriture de workflows Une session.
Patrick Guimonet Architecte Infrastructure Microsoft France.
Nicolas CLERC Tekigo – Cofounder
Eric Le Loc’h Microsoft France
Office 365: Vue d’ensemble de la solution
SDL en une slide Modélisation des menaces Démo…interactive!

•Présentation de Team Edition for Database Professionals •La méthodologie •Etude de cas.
Introduction Concepts d’affichage Quels sont les outils à notre disposition ? Quels sont les avantages et contraintes ? Process de rendu Description.
Postes clients OLAP Fichiers XML SGBD Requêtes Analyses Reports Intégration Synchronisation Recherche Serveurs.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Introduction au développement Office 2007
475 collaborateurs 300 formateurs CPLS Gold Certified depuis collaborateurs 300 formateurs CPLS Gold Certified depuis M€ de chiffres d’affaires.
Outil de conception d’applications WPF Anciennement « Interactive Designer » Orienté « intégrateur graphistes » Particularité : Blend tm est une application.
La sécurité dans SQL Server 2005
1 Laurent BONNET Stéphane GOUDEAU Architectes en Système d’information Division Développeurs et Plateforme d’Entreprise © 2005 Microsoft Corporation Un.
Réinventez votre messagerie
Technet Office System
Positionnement : Outil de supervision et d’administration spécialiste Les management packs de l’éditeur et la base de connaissance embarquée Rapidité.
Avantages pour les développeurs
Eric Mittelette Mitsuru Furuta Microsoft France
Qui a déjà manipulé SQL Server ? Toutes versions ? 2005 ? 2008 ? Qui utilise SQL Server en production ? Toutes versions ? 2005 ? 2008 ?
Quels sont les bénéfices techniques à migrer vers Windows Longhorn Server ?
Comprendre le Catalogue de Données Métier Utiliser le Catalogue de Données Métier Développer avec le Catalogue de Données Métier Conclusion.
 Répondre aux problèmes principaux de VS 2005  Augmenter toujours la productivité côté désign  Un vrai outil de développement pour le développement.
Portail collaboratif avec les technologies SharePoint
Introduction Les bases de la 3D dans WPF L’application Tron (la 3D pour les nuls ) Passer d’un rendu 2D à un rendu 3D La 3D dans les interfaces WPF.
Linq = Language INtegrated Query DLinq = Database + Linq Appelé maintenant Linq to Data Xlinq = XML + Linq Appelé maintenant Linq to XML.
1 Quelles nouveautés pour les Communications Unifiées ? Damien Caro Architecte Infrastructure Microsoft France
1 Applications d’entreprise avec.NET 4.0 et Silverlight 4 David Rousset Mitsuru Furuta
Une heure de démonstration! Démo 1: Administration de MOSS 2007 Démo 2: Aperçu de System Center Operation Manager Démo 3: Sauvegarde/Restauration avec.
1 Eric Mittelette Eric Vernié DPE – Microsoft France.
1 Eric Le Loc’h Avant-vente Team System Microsoft
1 Chesné Pierre
Benjamin Soulier Technical Expert Cambridge Technology Partners Les nouveautés de Windows Azure.
Nicolas CLERC QuidMind S.A. Microsoft Regional Director Windows Phone 7 … Allez plus loin …
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
1 Pierre Cauchois Relations techniques – Embarqué et Mobilité.
Phase d’étudeDéveloppement Marketing & Vente.
1 Panorama de l'offre SaaS (Software as a Service) de Microsoft Damien Caro Architecte Infrastructure
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
1 Silverlight & XNA Développeurs, à vous le mobile! Pierre Cauchois - Microsoft France Relations avec les développeurs (mobiles et embarqués)
Microsoft Confidential À propos de ce support Cette présentation est conçue pour être utilisée par des agences qui souhaitent aider leurs clients à comprendre.
Roch Baduel – Winwise Pierre Couzy – Microsoft Comment ça marche Comment vous pouvez développer avec.
Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015.
Principale entreprise française indépendante dédiée aux technologies Microsoft 12 ans d’expérience dans le conseil et la réalisation de projets à haute.
Les méthodes de tests Les grands principes pour réaliser des tests efficaces.
Human Task Service (2008) Oscar Barrios et François Charoy Human Task Service Service de tâches dans un système de gestion de workflow Oscar Barrios
Utilisation du logiciel EduStat©
PowerShell sur Linux : pourquoi et comment ?
Création du statut de membre non plongeur
Proposition pour un comité composé de 9 membres
Unité 3 – On fait les courses
Utilisation du logiciel EduStat©
Ecrire du code .NET 2.0 dans SQL Server 2005
Transcription de la présentation:

Principale entreprise française indépendante dédiée aux technologies Microsoft 12 ans d’expérience dans le conseil et la réalisation de projets à haute valeur ajoutée sur ces technologies 90 consultants experts sur les dernières technologies Microsoft : développement avancé (.Net 3.5, Silverlight, WPF...) génie logiciel (Visual Studio, VSTS, TFS...) travail collaboratif (WSS, MOSS, VSTO...) gestion de bases de données et Business Intelligence (SQL Server 2005/2008, PerformancePoint Server ) architecture et intégration (BizTalk, Workflow Foundation, WCF...) er centre de formation en France sur les technologies.Net et la BI. Edition de frontaux et composants logiciels programmables (ReportSmith.net). Une densité de certification unique : Regional Director, Gold Certified Partner, une forte concentration de MVPs, 100% des collaborateurs certifiés.

Visual Studio : les outils de gestion de perfs Tests Web Tests de montée en charge Analyse dynamique de code ASP.NET : les fonctionnalités méconnues Page asynchrones Custom Expression Builder Chiffrement des sections de configuration Adaptateurs de rendu Dépendance de cache personnalisée Providers « Virtual path »

ASP.NET 2.0 ASP.NET 3.5 C# 3 VB 9 MS AJAX ASP.NET 1.x VS 2003 VS 2008 ASP.NET 2.0 VS 2005

MSF Process and Guidance Visual Studio Team Explorer Visual Studio Industry Partners Visual Studio Team Foundation Server Gestion du changement Suivi d’activités / Fiches Reporting Site Portail Intégration / Compilation Gestion de Projet Visual Studio Team Suite Software Architects Software Developers Software Testers Database Professionals Modélisation Applicative Modélisation Infrastructure et Déploiement Analyse de code Profiler Déploiement de Bases Gestion du Changement Tests de Bases de Données Tests Web Tests Manuels Gestion de cas de tests Load Test Agent Visio / Modélisation UML Modélisation de Classes Test Unitaire Couverture de code Tests de Charge Métriques de code Visual Studio Professional

Visual Studio Team Suite MSF Process and Guidance Visual Studio Team Foundation Server Visual Studio Industry Partners Software Architects Software Developers Software Testers Database Professionals Visual Studio Team Explorer Modélisation Applicative Modélisation Infrastructure et Déploiement Analyse de code Profiler Déploiement de Bases Gestion du Changement Tests de Bases de Données Tests Web Tests Manuels Gestion de cas de tests Visual Studio Professional Gestion du changement Suivi d’activités / Fiches Reporting Site Portail Intégration / Compilation Gestion de Projet Load Test Agent Visio / Modélisation UML Modélisation de Classes Test Unitaire Couverture de code Tests de Charge Métriques de code

Un enchaînement de requêtes HTTP, Décrivant un scénario d’utilisation Éventuellement paramétré Jeux de test Jeux de résultats Validé par un ensemble de contraintes Temps de réponse global ou unitaire statut HTTP Observation d’un résultat dans les pages Intégré au cycle de développement Anticipation des problèmes

Un plug-in dans IE pour capturer les scénarios Indépendant de la techno serveur Supporte Ajax (nouveauté VS 2008) Stockage du scénario Au format XML en standard Scriptables en C#, VB.NET si nécessaire Les scénarios capturés sont variabilisables Support de Get, Post, Cookies, etc. Prêt pour l’injection de jeux de test Supporte les authentifications BASIC, NTLM Extensible

Simulation d’une application en conditions réelles Exécution simultanée de plusieurs scénarios Détection des problème de montée en charge Mise en évidence des problèmes d’accès concurrents Panachage de navigateurs / bande passante Egalement intégrés au cycle de développement Anticipation des problèmes Validation d’une plateforme de production cible

S’appuient sur les tests Unitaires ou les tests Web Définition d’une méthodologie de charge Charge constante, progressive ou par objectif Simulation de plusieurs types de navigateurs Simulation de connectivités réseaux distinctes Algorithmes de répartition de temps de réflexion Natifs dans Visual Studio Team Test Utilisation possible de Load Controller / Agent Capture simultanée des compteurs de performances Génération d’états

Analyse dynamique des performances En sondant l’exécution « Sampling » ou « Instrumentation » Génération d’états Fonctions ayant pris le plus temps Le plus souvent appelées Consommant le plus de mémoire … Nouveautés de VS 2008 Mise en évidence du chemin critique Comparaison de deux rapports

Cette technique permet de libérer le threadpool ASP.Net des opérations longues Elle consiste à faire 2 sauts de thread afin d’effectuer le traitement long sur un thread indépendant d’ASP.net Pas de monopolisation de thread IIS Primordial pour les pages ASP.NET qui exécutent des opérations longues Requêtes SQL volumineuses Appel de Web services etc Ajout de Async="true" dans la directive de page Gestion de timeout possible

PreInit Init PreRender PreRenderComplete Cycle de vie d’une page classique Render InitComplete PreLoad LoadComplete Load SaveState SaveStateComplete PreInit Init PreRender PreRenderComplete Render InitComplete PreLoad LoadComplete Load SaveState SaveStateComplete Cycle de vie d’une page asynchrone End Begin Async I/O Thread Thread 1 iis Thread 2 iis

void Page_Load (object sender, EventArgs e) { AddOnPreRenderCompleteAsync ( new BeginEventHandler (BeginAsyncOperation), new EndEventHandler (EndAsyncOperation) ); } IAsyncResult BeginAsyncOperation (object sender, EventArgs e, AsyncCallback cb, object state) { // TODO: Begin async operation and return IAsyncResult } void EndAsyncOperation (IAsyncResult ar) { // TODO: Get results of async operation }

Expressions préfixées de "$" présentes dans les fichiers *.aspx Permet d’associer un paramètre à un contrôle serveur bien avant le DataBind(). Possibilité de créer ses propres expressions: Héritage de la classe “ExpressionBuilder” Surcharge de la méthode “GetCodeExpression”

public class MyExpressionBuilder : ExpressionBuilder { public override CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context) { // TODO: Return CodePrimitiveExpression encapsulating // evaluated expression }

<add expressionPrefix="Expression" type="MyExpressionBuilder"/> $ expression (e.g, "Resources")

Les données du Web.config peuvent être stockées de manière sécurisée En Triple-DES en utilisant une clé auto générée En RSA via un jeu de clés publique/privée Avec tout autre algorithme au travers d’un provider personnalisé Deux manière de procéder: Aspnet_regiis.exe SectionInformation.ProtectSection Aucun impact sur l’application

<add name="LocalSqlServer" connectionString="Server=localhost;Integrated Security=True;Database=aspnetdb;..." /> <add name="WhidbeyRocksConnectionString" connectionString="Data Source=(local);Initial Catalog=WhidbeyRocks;Integrated Security=True" providerName="System.Data.SqlClient" /> <EncryptedData Type=" xmlns=" kxxLhiRQrNlloq0YLYAr2FycMt1hMbEqngu+Pn1UTSbcK4BMUprnA+jWq5nhZk... Avant Après aspnet_regiis –pef connectionStrings c:\websites\whidbeyrocks

Adaptateurs de contrôles Personnalisation du rendu d’un contrôle Utilisé par le “CSS Control Adapter Toolkit” System.Web.UI.Adapters.ControlAdapter et dérivés (ex, WebControlAdapter) Adaptateurs de pages Modification du rendu d’une page Ex: viewstate Eventuellement en fonction du navigateur System.Web.UI.Adapters.PageAdapter Utilisation du répertoire spécial « App_Browsers »

public class MyTextBoxAdapter : ControlAdapter { protected override void Render(HtmlTextWriter writer) { writer.AddAttribute(HtmlTextWriterAttribute.Style, "color: red"); base.Render(writer); } Ajout de l’attribut ="color: red" au style du contrôle lors de la génération de l’HTML

<adapter controlType="System.Web.UI.WebControls.TextBox" adapterType="MyTextBoxAdapter" /> Fichier *.browser dans le répertoire App_Browsers

Permet de changer la politique de cache en une seule opération pour un groupe de pages ou de contrôles Utile pour réagir rapidement à un pic de charge, ou pour tester des scénarios. Les profils doivent être déclarés dans le fichier de configuration du site ..

ASP.NET permet de créer ses propres dépendances de cache Héritage de la classe CacheDependency Définition de la logique de gestion de cache dans le constructeur Utilisation de “base.NotifyDependencyChanged” pour notifier de la mise à jour du cache Très utile pour gérer sa propre logique de rafraichissement Exemple: à la demande

public class MyCacheDependency : CacheDependency { private Timer _timer; public MyCacheDependency() { _timer = new Timer(new TimerCallback(OnTimerTick), null, TimeSpan.FromSeconds(60), TimeSpan.FromSeconds(60)); } private void OnTimerTick(object state) { if (...) // If dependency changed... base.NotifyDependencyChanged(this, EventArgs.Empty); }

En ASP.NET 1.*, pour déclarer un contrôle utilisateur ou contrôle personnalisé: Doit être placé dans chaque page A partir d’ASP.NET 2.0, possibilité de les déclarer dans le Web.config Utilisation de la section Est déclaré pour l’ensemble des pages

Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" Register TagPrefix="win" TagName="Banner" Src="~/UserControls/BannerControl.ascx" ASP.NET 1.1 <add tagPrefix="win" tagName="Banner" src="~/UserControls/BannerControl.ascx" /> <add tagPrefix="win" tagName="Banner" src="~/UserControls/BannerControl.ascx" /> Web.config ASP.NET 2.0

ASP.NET permet la virtualisation de chemins pointant normalement vers des fichiers : Stockage dans une base de données (ex SharePoint) Stockage dans un format compressé ou masqué Pour créer son propre provider Héritage de la classe VirtualPathProvider Enregistrement avec la méthode HostingEnvironment.RegisterVirtualPathProvider

public class MyVirtualPathProvider : VirtualPathProvider { public static void AppInitialize() { HostingEnvironment.RegisterVirtualPathProvider (new MyVirtualPathProvider()); } public override bool FileExists(string virtualPath) {...} public override bool DirectoryExists(string virtualDir) {...} public override VirtualFile GetFile(string virtualPath) {...} public override VirtualDirectory GetDirectory(string virtualDir) {...} }

Toute ressource atteignable par une requête http Répertoires *.ASPX, *.ASCX et *.ASMX Le repertoire “App_Themes” et les fichiers de Skin CSS, JS, et fichiers d’images si gérés par ASP.NET A l’opposé, ne sont pas virtualisables Fichiers Web.config et Global.asax Reperoires App_Code, App_Data et Bin Fichiers *.sitemap

VirtualPathProvider.GetFileHash Renvoie un “hash” représentant l’état Si modification, recompilation Appelé après chaque méthode “GetFile”VirtualPathProvider.GetCacheDependency Permet de mettre en cache la donnée Ex: SqlCacheDependency or personnalisé Plus efficace que GetFileHash

Les versions actuelles d’ASP.NET réservent encore des surprises… …beaucoup d’autres fonctionnalités méconnues: Url Rewriting, Url Mapping, Callback Ajax natif, Substitution de cache, TagMapping, Ressource provider, attribut meta:resourceKey, …

La référence technique pour les IT Pros : pour les IT Pros :technet.microsoft.com L’engagement Microsoft pour les développeurs : msdn.microsoft.com S’informer - Un portail d’informations, des événements, une newsletter bimensuelle personnalisée Se former - Des webcasts, des articles techniques, des téléchargements, des forums pour échanger avec vos pairs Bénéficier de services - Des cursus de formations et de certifications, des offres de support technique Visual Studio Abonnement MSDN Premium Abonnement TechNet Plus : Versions d’éval + 2 incidents support

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Votre potentiel, notre passion TM