<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-18144048</id><updated>2011-04-21T13:06:06.743-07:00</updated><title type='text'>Jiri's Shared IT knowledge</title><subtitle type='html'>Mon éspace de partage</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>42</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-18144048.post-7660838865887551675</id><published>2008-04-22T05:41:00.000-07:00</published><updated>2008-04-22T05:47:20.029-07:00</updated><title type='text'>Windows Server 2008/SQL Server 2008/Visual Studio 2008 Hands On Labs</title><content type='html'>Vous pouvez télécharger les Labs Windows Server 2008,SQL Server 2008 et Visual Studio 2008 via le lien suivant : &lt;a href="http://heroes.labmanuals.virtualwide.com/"&gt;http://heroes.labmanuals.virtualwide.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-7660838865887551675?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/7660838865887551675/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=7660838865887551675' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/7660838865887551675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/7660838865887551675'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2008/04/windows-server-2008sql-server.html' title='Windows Server 2008/SQL Server 2008/Visual Studio 2008 Hands On Labs'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-2966210048578503497</id><published>2008-04-22T05:31:00.000-07:00</published><updated>2008-04-22T05:35:34.062-07:00</updated><title type='text'>[VSTO] Des labs sur VSTO avec Visual Studio 2008</title><content type='html'>Si vous avez prévu de faire un peu de développement autour de VSTO (Visual Studio Tools for Office) avec Visual Studio 2008, alors je vous recommande ces labs:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032350942&amp;amp;culture=en-US" target="_blank"&gt;ISV Virtual Lab: Building Custom Office Applications Using Microsoft VSTO Part 1-Data Binding with Word Content Controls&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032350943&amp;amp;culture=en-US"&gt;ISV Virtual Lab: Building Custom Office Applications Using Microsoft VSTO Part 2-Create an Outlook Add-in with a Form Region&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032350944&amp;amp;culture=en-US"&gt;ISV Virtual Lab: Building Custom Office Applications Using Microsoft VSTO Part 3-Build an Excel Add-in with Ribbon and Custom Task Pane Integration&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032350945&amp;amp;culture=en-US"&gt;ISV Virtual Lab: Building Custom Office Applications Using Microsoft VSTO Part 4-Create a SharePoint Workflow&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Trouvé sur le blog de : &lt;a href="http://blogs.codes-sources.com/tom/default.aspx"&gt;Thomas Lebrun&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-2966210048578503497?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/2966210048578503497/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=2966210048578503497' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/2966210048578503497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/2966210048578503497'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2008/04/vsto-des-labs-sur-vsto-avec-visual.html' title='[VSTO] Des labs sur VSTO avec Visual Studio 2008'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-4235699250210190180</id><published>2008-04-22T05:14:00.000-07:00</published><updated>2008-12-12T22:16:48.614-08:00</updated><title type='text'>VISUAL STUDIO 2008</title><content type='html'>&lt;div align="left"&gt;Microsoft Visual Studio 2008 est cohérent avec la vision de Microsoft en termes d’applications pour clients dynamiques : avec lui, les développeurs disposent d’un outil permettant de créer rapidement des applications connectées, synonymes de haute qualité et de fonctionnalités riches. Grâce à Visual Studio 2008, les entreprises collecteront et analyseront facilement des données ; par conséquent, elles pourront prendre de meilleures décisions pour leur activité. Visual Studio 2008 convient aux entreprises de toute taille ; il est particulièrement adapté pour la création rapide d’applications fiables, mieux sécurisées, et plus facilement gérables, bâties sur Windows Vista et Office system 2007. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5192042530067579202" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_Syz2fe_SA_Y/SA3XLCdmAUI/AAAAAAAAAHE/UArKCVWmOoA/s320/VS08%2520-%2520Visuel%2520conique.jpg" border="0" /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Développer des applications pour clients dynamiques&lt;/strong&gt; . Visual Studio 2008 offre aux développeurs une nouvelle méthode simple pour créer des clients dynamiques. Les développeurs disposent en effet d’un ensemble d’outils complet et de classes qui simplifient l’intégration de clients dynamiques aux applications Web nouvelles ou existantes. Ils peuvent aussi gérer la mise en mémoire cache locale des données pour des utilisations hors connexion.&lt;br /&gt;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Créer des applications Microsoft Office &lt;/strong&gt;. Visual Studio Tools for Office (VSTO) est maintenant entièrement intégré à Visual Studio 2008 Professional Edition. Visual Studio permet aux développeurs de personnaliser des applications Office, telles que Outlook® et PowerPoint®, afin de rendre les utilisateurs plus efficaces et de simplifier les déploiements.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Construire des applications Windows Vista &lt;/strong&gt;. Les développeurs peuvent facilement exploiter les nouvelles plateformes ; ils peuvent concevoir des applications attrayantes en intégrant sans difficulté les nouvelles fonctionnalités de Windows Presentation Foundation dans les applications Windows Forms existantes et dans les nouvelles applications.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Gérer les données plus efficacement&lt;/strong&gt; . L’introduction de LINQ (Language Integrated Query) et de nouvelles possibilités d’accès aux données permettent aux développeurs de gérer les données de façon plus cohérente, d’accéder aux données via de nouvelles zones de conception et enfin, d’utiliser des classes intégrées dans le cas d’un gabarit de conception non connecté en permanence.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Des capacités de développement globalement améliorées&lt;/strong&gt; . Visual Studio 2008 combine des améliorations significatives sur la qualité, sur la façon dont les zones de conception renvoient les erreurs aux utilisateurs, et sur la possibilité d’adopter séparément les outils et le cadre de travail.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Nouvelles expériences Web&lt;/strong&gt; . En plus de l’infrastructure sécurisée, fiable et extensible d’IIS, les développeurs disposent d’un outil qui leur permet de créer facilement des applications Web interactives. Grâce à l’intégration du modèle familier de programmation AJAX ASP.NET, l’exécution des applications côté client est plus efficace et les utilisateurs bénéficient d’une interface Web plus réactive.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Amélioration de la gestion du cycle de vie des applications&lt;/strong&gt; . Cette fonctionnalité permet une meilleure prise en charge, non seulement pour gérer le cycle de vie des logiciels, mais aussi lors de l’interaction avec les utilisateurs et les informaticiens amenés à utiliser les applications de l’entreprise.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-4235699250210190180?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/4235699250210190180/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=4235699250210190180' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/4235699250210190180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/4235699250210190180'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2008/04/visual-studio-2008.html' title='VISUAL STUDIO 2008'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Syz2fe_SA_Y/SA3XLCdmAUI/AAAAAAAAAHE/UArKCVWmOoA/s72-c/VS08%2520-%2520Visuel%2520conique.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-9033030802405747901</id><published>2007-03-05T13:22:00.000-08:00</published><updated>2008-12-12T22:16:49.790-08:00</updated><title type='text'>Création de WebPart pour SharePoint 2007</title><content type='html'>&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div align="justify"&gt;La version 2007 venant tout juste de sortir, la documentation qui l’accompagne n’est pas forcément très développée (surtout quand vous n’êtes pas officiellement en charge de déployer un serveur SharePoint ^^).Résultat, je passe une grande partie de ma journée à lire des blogs sur la questions. Il est éxiste de très nombreux (bien sur en anglais) plus ou moins bien fait.J’ai enfin trouvé une superbe &lt;a href="http://www.winsmarts.com/"&gt;adresse de blog&lt;/a&gt; dont le rédacteur travaille chez Microsoft et qui donne pas mal de truc et astuces sur SharePoint. Il explique entre autre &lt;a href="http://www.developer.com/net/asp/article.php/10917_3620316_1" target="_blank" modo="false"&gt;comment réaliser son propre web part&lt;/a&gt;, ce qui est très très utile pour les personnes qui démarre dans cet environnement et ne savent même pas par où commencer.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;p align="justify"&gt;Et il faut plutôt s’accrocher, en très rapide, ça donne ça :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Commencez par ouvrir une classe Library de C# sous Visual Studio. &lt;/li&gt;&lt;li&gt;Codez ce que vous cherchez à voir (je crois que l’image est pas très lisible, mais si on l’enregistre, elle le devient un peu plus) &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148025204994185042" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_Syz2fe_SA_Y/R3F1pgZvl1I/AAAAAAAAAA0/2qMOJXiLE_w/s320/sp.png" border="0" /&gt;&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;En n’oubliant pas d’ajouter des reférence d’assembly ET de marquer qu’on les utilise (ça ne se fait pas automatiquement) &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148025737570129762" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_Syz2fe_SA_Y/R3F2IgZvl2I/AAAAAAAAAA8/AFbkjiMWEOQ/s320/references.png" border="0" /&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148026437649799026" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_Syz2fe_SA_Y/R3F2xQZvl3I/AAAAAAAAABE/j4dLRx8jlwQ/s320/references2.png" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ajoutez un “strong name” à ce nouveau web part : clique droit sur le projet &gt; propriétés &gt; “Signing” &gt; Cochez “Sign the assembly” &gt; “Choose a strong name key file” &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148027103369729922" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_Syz2fe_SA_Y/R3F3YAZvl4I/AAAAAAAAABM/l0oxI74DkHI/s320/signing.png" border="0" /&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;On build (en croisant les doigts) &lt;/li&gt;&lt;li&gt;Puis au choix :&lt;br /&gt;- On récupère la DLL et on la met dans le GAC, c’est à dire dans&lt;br /&gt;C:\WINDOWS\assembly\ (comme son nom l’indique bien sur…)&lt;br /&gt;- Ou alors on récupère la DLL et on la met dans le dossier BIN de votre site&lt;br /&gt;SharePoint c’est à dire dans …\www(ou wwwroot)\wss\VirtualDirectories\&lt;br /&gt;(votre site)\BIN\ &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Quelques soit le choix effectué ci-dessus, on récupère la clé publique de la DLL (public token). Le plus simple pour moi étant de la récupérer grâce au GAC (c’est écrit à coté de la DLL ou dans propriétés de la DLL) &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ensuite on va changer le fichier web.config de votre site SharePoint (donc toujours …\www(ou wwwroot)\wss\VirtualDirectories\(votre site)\web Il faut rajouter ceci à la liste des SafeControl&lt;span style="color:#990000;"&gt;::&lt;safecontrol assembly="”SimpleWebPArt," version="1.0.0.0," culture="neutral," publickeytoken="5d92440e07906283″" namespace="”SimpleWebPArt”" typename="”*”" safe="”True”"&gt;”&lt;safecontrol assembly="”SimpleWebPArt," version="1.0.0.0," culture="neutral," publickeytoken="5d92440e07906283″" namespace="”SimpleWebPArt”" typename="”*”" safe="”True”"&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Et vous avez presque fini, courage ! &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Retour sur SharePoint, cliquez sur Site Actions &gt; Site Settings et dans “Site Collection Administration” cliquez sur “Go to the top level site”, l’ajout de web part ne se faisant que sur les sites (et non les sous-sites, cf le langage SharePoint dont je ferai certainement un point un jour) &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Si vous êtes dans le top level site, cliquez dans “Galleries” sur “Web Parts”&lt;br /&gt;Cliquez ensuite sur “New” et là, si vous avez bien fait votre travail, votre nouveau web part est proposé (quelque part dans la liste)&lt;a title="webpartpopulate.PNG" href="http://mirisil.files.wordpress.com/2007/03/webpartpopulate.PNG"&gt; &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148029487076579218" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 394px; CURSOR: hand; HEIGHT: 81px; TEXT-ALIGN: center" height="66" alt="" src="http://2.bp.blogspot.com/_Syz2fe_SA_Y/R3F5iwZvl5I/AAAAAAAAABU/cWvV8qFJdTw/s320/webpartpopulate.png" width="351" border="0" /&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Cochez la case, puis allez cliquez en haut de la page sur “Populate Galleries“. Si tout fonctionne bien, votre web part peut maintenant être ajouter à une page SharePoint comme n’importe quel autre web part (il se trouve dans la catégorie “Miscellaneous“)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5148029843558864802" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_Syz2fe_SA_Y/R3F53gZvl6I/AAAAAAAAABc/bv5z7IAmBu8/s320/webpart.png" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;Et pour trouver toutes ces informations mais aussi trouver où mettre les DLL et tout et tout… je me suis bien amusée !Ce post servira peut-être à quelqu’un pour qu’il ne trime pas comme je l’ai fait !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-9033030802405747901?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/9033030802405747901/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=9033030802405747901' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/9033030802405747901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/9033030802405747901'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2007/03/cration-de-webpart-pour-sharepoint-2007.html' title='Création de WebPart pour SharePoint 2007'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Syz2fe_SA_Y/R3F1pgZvl1I/AAAAAAAAAA0/2qMOJXiLE_w/s72-c/sp.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-8457952783702579481</id><published>2007-01-07T13:46:00.000-08:00</published><updated>2008-12-12T22:16:50.386-08:00</updated><title type='text'>Architecture logique SharePoint 2007</title><content type='html'>&lt;span style="color:#cc9933;"&gt;Introduction &lt;/span&gt;&lt;br /&gt;La technologie SharePoint a atteint une véritable maturité technologique dans sa version 2007.&lt;br /&gt;3eme version après SPS 2001 et SPS 2003, elle est devenue un des piliers incontournables de l'offre Office System ainsi que le pilier technologique des nouveaux Office Servers comme Excel Service, InfoPath Forms Server et Performance Point.&lt;br /&gt;Elle peut être résumée rapidement comme une « Site Factory » basée sur la notion de modèle. SharePoint 2007 peut ainsi gérer aussi aisément un site institutionnel, quelques blogs/Wiki, une hiérarchie de GED jusqu'à une infinité d'espace de projet ou d'équipe. Et le tout basé sur une seule et unique infrastructure !&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5133941329410594210" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_Syz2fe_SA_Y/Rz9scDU3FaI/AAAAAAAAAAM/rMq7t7gOEdw/s320/imageHandler.png" border="0" /&gt;&lt;br /&gt;Mais avant de parler de conception, développement, ou même infrastructure, il est impératif de bien comprendre les tenants et aboutissants de la technologie SharePoint 2007.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;Les principes fondamentaux de l'architecture de SharePoint 2007&lt;br /&gt;Principe 1 : Une architecture logique hiérarchique&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Quand on parle d'architecture logique, la notion de machine physique est clairement absente. Dans le cas de la technologie SharePoint, c'est encore plus une réalité.&lt;br /&gt;Qu'il s'agisse d'un serveur « standalone » ou même une infrastructure reliée de 5 machines, l'ensemble se réduira toujours à la notion de ferme SharePoint. Il n'existe ainsi pas de différence entre toutes les configurations physiques possibles, il ne s'agit que de rôle serveur et de volumétrie de gestion. Evidemment, une ferme composée de plusieurs serveurs SharePoint gère bien plus de sites, de portails et d'utilisateurs simultanés qu'un simple serveur. Cependant, il n'y a aucune impact sur la conception même et l'organisation des contenus d'un site web SharePoint : ce seront les mêmes.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Mais quels sont donc les éléments de base de toute architecture SharePoint ?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Simple, il s'agit en fait d'une architecture très hiérarchisé et interdépendante.&lt;br /&gt;&lt;br /&gt;La ferme SharePoint héberge donc différentes Web Applications (WA). Ce sont des instances de Sites Web IIS qui ont été « étendus » par SharePoint. Comprenez des sites IIS sur lesquels, l'applicatif SharePoint gère le traitement de ses informations grâce à ASP.Net 2.0.&lt;br /&gt;&lt;br /&gt;Les Web Applications gèrent aussi le stockage de l'information en associant diverses bases de contenus sous SQL Server.&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Les Web Applications sont, en fait, le support logique de SharePoint 2007&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5133943176246531522" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_Syz2fe_SA_Y/Rz9uHjU3FcI/AAAAAAAAAAc/yBKuQP96kqU/s320/imageHandler1.png" border="0" /&gt;&lt;br /&gt;&lt;p&gt;Il vient ensuite la notion de Site Collection (SC ou SPSite). Elles représentent le conteneur principal de SharePoint. Elles contiennent et gèrent le cycle de vie des sites web de contenu (WS ou SPWeb). Soit le site Web SharePoint que tout à chacun peut observer via son navigateur.&lt;br /&gt;&lt;br /&gt;Pour mieux comprendre, sachez que le Site Web est le premier type de contenu de SharePoint 2007 et qu'il n'existe qu'à travers une Site Collection. Un peu comme un contenant et son conteneur.&lt;br /&gt;&lt;br /&gt;Prenons l'exemple d'une chaine d'hôtel. Les chambres d'hôtel appartiennent toujours à un hôtel et plusieurs hôtels peuvent exister dans la même région comme dans le cas des Formule1, Ibis, Parking ou autre.&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5133943945045677522" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_Syz2fe_SA_Y/Rz9u0TU3FdI/AAAAAAAAAAk/kpambe62Rrk/s320/imageHandler2.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;Ainsi, si le contenu est lié au SPWeb, la gestion, la volumétrie et les diverses galeries de permission, droits ou de WebParts sont liés au SPSite mais mis en commun pour tous les SPWeb. C'est une structure arborescente classique et sachez que le site de racine ou site de haut niveau est toujours le premier site obtenu à la création de la collection de Site.&lt;br /&gt;&lt;br /&gt;Les collections de site ou SPSite sont eux reliés au Web Application via la notion de Chemin de gestion. Par défaut, une collection peut être créée soit en racine « / » (chemin explicite) ou en sous site de l'adresse « /Sites/* » (chemin générique). D'autre chemins peuvent être ajoutés afin de diversifier un peu plus les adresses comme :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Adresses génériques : &lt;/li&gt;&lt;li&gt;/Blogs (puis une SPSite par Blog de la société) &lt;/li&gt;&lt;li&gt;/Teams (pour le collaboratif) &lt;/li&gt;&lt;li&gt;/Projects (pour la création des sites de projet générés par Project Server par exemple)&lt;br /&gt;Adresses explicites : &lt;/li&gt;&lt;li&gt;/HR (Portail HR indépendant de l'intranet) &lt;/li&gt;&lt;li&gt;/Filiale (Nom de la filiale)&lt;/li&gt;&lt;li&gt;garder toujours la racine pour le site institutionnel, c'est usuel&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Des entêtes http peuvent aussi être utilisés comme Teams.VotreDns.org mais il faut alors passer par les lignes de commandes.&lt;br /&gt;En ce qui concerne le contenu, soit le SPWeb ou les sites web, ils sont composés de 2 éléments principaux :&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Les pages web : soit de simple page ASPX ou mieux encore de Pages à WebParts dans le pur style ASP.Net 2.0.&lt;/li&gt;&lt;li&gt;Des Listes de contenus : SPList. Ce sont les gestionnaires d'information des SPWeb. Elles sont de divers types comme les bibliothèques documentaire, d'image ou même la gestion des taches avec vue Gantt.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Ces deux composants forment le c?ur des modèles de génération en XML « Site Definition », qui est utilisé lors de la création de ces sites.&lt;br /&gt;&lt;br /&gt;Un dernier point à ne jamais négliger. Chaque SPWeb peut contenir des sous sites Web et ainsi de suite. Ce que l'on appelle communément une hiérarchie de contenu.&lt;br /&gt;&lt;br /&gt;Le grand secret de la conception SharePoint ne dépend pas simplement des modèles de site, de contenu et des WebParts mais bien plus de l'agencement de divers « Site Collection » associé à la profondeur et la répartition des diverses arborescence de « Site Web ».&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Un bon conseil : Privilégiez toujours 2,3 niveaux de SPWeb mais limitez l'utilisation de dossier dans les listes documentaires !&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="color:#cc6600;"&gt;Principe 2 : Ce sont tous des Sites SharePoint.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Sous WSS v3, nous parlerons souvent de Team Site, Meeting Site ainsi que de Blog et de Wiki.&lt;br /&gt;&lt;br /&gt;Sous MOSS 2007, l'accent sera plus sur la notion de portail communautaire, site institutionnel, site de publication ou Dashboard BI.&lt;br /&gt;&lt;br /&gt;Quelques soient la License choisie et le modèle utilisé, il s'agit toujours et encore du trinôme :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Web Site &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Site Collection &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Web Application&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Et bien sur, on n'oublie pas la notion de modèle de site Web, modèle de listes et les divers composants propres à chaque site.&lt;br /&gt;&lt;br /&gt;Quoi que vous manipuliez sous SharePoint 2007, il y a de fortes chances qu'il s'agisse d'un SPWeb ou site web si vous préférez.&lt;br /&gt;&lt;br /&gt;Sans rien trahir quelques secrets de polichinelle, sachez que même l'administration centrale de SharePoint 2007 repose sur une simple Site Collection avec son site web de racine et 3 pages applicatives : Home, Application et Operation.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#cc6600;"&gt;Principe 3 : les services partagés.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Lors d'une analyse simple d'un portail de contenu, de nombreuses similitudes peuvent être identifiées rapidement comme :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;La gestion de profile &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Un moteur de recherche &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;La SSO &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;L'intégration avec des systèmes tiers comme les ERP de Gestion&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Souvent, il s'agit de services de haut niveau utilisés directement via le portail ou d'autre intranet d'un système d'information.&lt;br /&gt;&lt;br /&gt;SharePoint 2007 respecte ce design dans sa nouvelle conception via la notion de « Shared Services Provider » (SSP) ou «Fournisseur de Services Partagés ».&lt;br /&gt;&lt;br /&gt;La plupart des services de haut niveau et/ou consommateurs de ressources sont ainsi regroupés à travers cette notion de SSP pour mieux être exploités via les différents sites de contenus.&lt;br /&gt;&lt;br /&gt;Leur gestion est cependant devenue indépendant même du site web qui l'exploite. Ne cherchez donc plus le module des audiences dans un portail MOSS mais plutôt dans son SSP associé.&lt;br /&gt;&lt;br /&gt;Cette externalisation permet en plus d'associer un site de gestion externe et accessible depuis l'administration centrale. Bonus non négligeable, leur gestion peut être facilement déléguée à des administrateurs tiers.&lt;br /&gt;&lt;br /&gt;Fini les cumuls de rôles entre :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Gestionnaire de contenu &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Administrateur réseau &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Coordinateur SharePoint&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Un dernier point, les SSP sont seulement accessibles pour une configuration MOSS et non WSS. Cependant des Sites Collection de Team Site WSS peuvent être aisément reconnectées à un SSP si un jour le moteur de recherche fédérateur était déployé.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;&lt;span style="color:#993300;"&gt;Principe 4 : Les nouveaux portails MOSS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Sous SharePoint 2003 et 2001, on différenciait 2 types principaux de sites Web :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Les portails (SPS) &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;Les sites d'équipes (WSS)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#000000;"&gt;SharePoint 2007 change complètement cette donne et unifie le tout en accord avec le second principe.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5133944413197112802" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_Syz2fe_SA_Y/Rz9vPjU3FeI/AAAAAAAAAAs/2DtucRSxEOM/s320/imageHandler3.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Un site MOSS donc soit portail communautaire ou site de publication est en fait une classique Site Collection WSS v3 utilisant un modèle portail le tout associé à un SSP pour ses services de haut niveau.&lt;br /&gt;&lt;br /&gt;Désormais, les sites collaboratifs (WSS), les portails (MOSS Portal) ou le système de publication (MOSS WCM) partagent réellement les mêmes :&lt;/span&gt;&lt;/p&gt;&lt;span style="color:#000000;"&gt;&lt;ul&gt;&lt;li&gt;Couche applicative &lt;/li&gt;&lt;li&gt;Architecture &lt;/li&gt;&lt;li&gt;Infrastructure.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;En ce qui concerne le modèle portail, il n'y pas plus d'inquiétudes. Il s'agit en fait d'un simple modèle XML décrivant directement la hiérarchie de SPWeb à créer et leur Site Definition comme le décrit bien le principe 1.&lt;/p&gt;&lt;p&gt;Attention : Il ne faut pas se tromper pour autant, MOSS transcende vraiment la plateforme SharePoint face à WSS en permettant bien plus que de simple site de projet/collaboration&lt;/p&gt;&lt;p&gt;La notion de SSP, le moteur de recherche fédérateur, les modèles de publication et ses composants orientés métiers donnent une plateforme encore plus riche tournée vers les notions d'Entreprise Content Management (ECM).&lt;/p&gt;&lt;p&gt;Pour exemple, la Gestion Electronique Documentaire (GED) n'est que l'un des ces scenarii d'utilisation les plus simple. En effet, associé au Record Management, aux polices de gestion et de rétention, le résultat est bien plus riche.&lt;/p&gt;&lt;p&gt;&lt;span style="color:#990000;"&gt;Principe 5 : plus de topologie&lt;/span&gt;&lt;/p&gt;&lt;p&gt;C'est peut être un des points les plus novateurs de SharePoint 2007 : la disparition purement et simplement de notion de topologie lors du déploiement de l'infrastructure.&lt;/p&gt;&lt;p&gt;Il existe désormais 3 types de rôles pour un serveur SharePoint :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Serveur web Front End &lt;/li&gt;&lt;li&gt;Serveur Applicatif &lt;/li&gt;&lt;li&gt;Serveur de Base de données&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Vous pouvez ainsi composez n'importe quelle ferme de serveurs SharePoint avec tous types de serveurs exploitant l'un ou plusieurs de ces rôles.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Le rôle « Base de données » n'est en rien spécifique SharePoint, il s'agit purement d'une configuration SQL Server 2000, 2005 ou Express. En cas de besoins de scalabilité et haute disponibilité, des configurations en cluster 64 bits sont largement recommandées. &lt;/li&gt;&lt;li&gt;Le rôle « Web Front End » (WFE) est certainement le rôle le plus léger, car il ne consiste qu'à la transformation des données SharePoint en un site web via ASP.Net et IIS. Ces serveurs sont souvent mis en batterie afin d'utiliser la notion de balance de charge (NLB), somme toute classique, des technologies Windows Serveurs.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Petite remarque sur la notion de NLB, si un ensemble de deux serveurs assurent un bon niveau de fonctionnement de la couche WEB, elle n'est cependant pas idéale et donc peu recommandée. En effet, en cas de perte de l'un des deux serveurs, la continuité de service est assurée, cependant le dernier serveur se voit ainsi sur sollicité lors de cette période. Vous avez clairement une situation ou la performance et le risque est élevé, car votre dernier front end se retrouve en pleine charge. Il faut donc bien faire attention à vos critères de sélection et de calcul de vos serveurs. Privilégiez peut être plus une architecture de trois serveurs Front End Biprocesseur qu'un doublon de Quadriprocesseur.&lt;/p&gt;&lt;p&gt;Le dernier rôle consiste plus au rôle de « BackOffice ». Il assure les fonctions des « Shared Services » (SSP) comme par exemple, le fonctionnement de l'indexeur ou de requête. Tout les deux sont des bons exemples de services très consommateur de ressource en terme de pointe d'utilisation ou de puissance comme la mise à jour de l'ensemble des indexes. Via ce rôle, certains services peuvent être distribués sur des machines tierces pour ne pas ralentir le fonctionnement même du portail.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="color:#990000;"&gt;Conclusion &lt;/span&gt;&lt;/p&gt;&lt;p&gt;Comme vous pouvez le constatez, la plateforme SharePoint 2007 a été conçue selon des principes simples et efficaces :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Indépendance du rôle applicatif des serveurs physiques &lt;/li&gt;&lt;li&gt;Homogénéité de sa plateforme dans son utilisation &lt;/li&gt;&lt;li&gt;Factorisation des rôles. &lt;/li&gt;&lt;li&gt;Organisation hiérarchique&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;En tenant compte des différents principes évoqués dans cet article, vous pouvez désormais explorer sans crainte les 1001 possibilités offertes par SharePoint 2007, c'est-à-dire MOSS 2007, WSS V3 et toute la suite de serveur.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-8457952783702579481?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/8457952783702579481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/8457952783702579481'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2007/01/architecture-logique-sharepoint-2007.html' title='Architecture logique SharePoint 2007'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Syz2fe_SA_Y/Rz9scDU3FaI/AAAAAAAAAAM/rMq7t7gOEdw/s72-c/imageHandler.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116302223259362174</id><published>2006-11-08T13:35:00.000-08:00</published><updated>2006-11-08T14:01:38.866-08:00</updated><title type='text'>Microsoft Office 2007 finalisée</title><content type='html'>La bêta test de Microsoft Office 2007 encore en place restera comme l'une des plus importantes pour Redmond, &lt;span style="color:#ff6600;"&gt;&lt;strong&gt;Microsoft Office 2007 sort&lt;/strong&gt;&lt;/span&gt; de sa cuve amniotique, le rush &lt;span style="color:#ff6600;"&gt;&lt;strong&gt;est prévu pour le 30 de ce mois&lt;/strong&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.liens-utiles.org/modules/news/article.php?storyid=3016" target="_blank"&gt;La version Technical Refresh 2&lt;/a&gt; a permis à Microsoft de corriger une pléthore de bugs, toutefois sans version Release Candidate, difficile de se faire une réelle opinion.&lt;br /&gt;&lt;br /&gt;Enrichit à coups de stéroïdes, comme une meilleure performance, une meilleure stabilité, une diversité de langues et un support multi langage, Microsoft Office 2007 arrive.&lt;br /&gt;&lt;br /&gt;Avec Microsoft Office 2007, Microsoft révolutionne la suite bureautique, reléguant ses concurrentes à de simples artéfacts désuets, Microsoft a fait dans l'esthétique, dans le beau, dans le fonctionnel grâce à une interface graphique qui arbore en bonne place le fameux "Ruban.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/cap1.0.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/cap1.0.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Apres Internet Explorer 7.0 qui vient de sortir et maintenant la sortie imminente de la suite bureautique Office 2007, Microsoft finalise le futur système d'exploitation du monde Windosien.&lt;br /&gt;En attendant le 30 novembre pour s'équiper de cette suite bureautique d'un nouveau millénaire, vous pouvez lire &lt;a href="http://www.liens-utiles.org/modules/news/article.php?storyid=2706" target="_blank"&gt;notre petit test&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Si tout va bien car Microsoft nous a habitué à voir les dates de sortie officielles de ses applications subirent constamment des retards, les monsieur Jourdain du PC devraient voir leur PC envahit par Windows Vista et Office 2007 pour janvier.&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/Toolbar1.0.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/Toolbar1.0.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La version finale de démonstration de Microsoft Office dans la langue de Britney Spears sera disponible, tout au début décembre.&lt;br /&gt;&lt;br /&gt;Il ne serait pas étonnant de constater la sortie de ces deux atouts majeurs de Microsoft à l'occasion du &lt;strong&gt;Consumer Electronic Show&lt;/strong&gt; qui ouvrira ses portes le 8 janvier prochain.&lt;br /&gt;&lt;br /&gt;Va falloir brûler un cierge là !&lt;br /&gt;&lt;br /&gt;Pour les curieux c'est &lt;a href="http://www.windowsitpro.com/articles/index.cfm?articleid=94139&amp;feed=ArticleLink&amp;amp;promocode=rtartpage" target="_blank"&gt;&lt;strong&gt;ici&lt;/strong&gt;&lt;/a&gt; !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116302223259362174?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116302223259362174/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116302223259362174' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302223259362174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302223259362174'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/11/microsoft-office-2007-finalise.html' title='Microsoft Office 2007 finalisée'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116302142552136330</id><published>2006-11-07T23:53:00.000-08:00</published><updated>2006-11-08T13:33:07.066-08:00</updated><title type='text'>Microsoft Office System 2007 passe en version RTM</title><content type='html'>&lt;strong&gt;La firme de Redmond vient d'annoncer officiellement l'achèvement du code de Office 2007 qui passe gold et confirme ainsi la sortie de la version RTM. Microsoft respecte donc ses derniers engagements en terme de date et les entreprises pourront passer commande de la suite bureautique estampillée 2007, à partir du 30 novembre tout comme, à priori, le système d'exploitation Windows Vista et le serveur de messagerie Exchange Server 2007.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Voilà, c'est officiel, le leader mondial du logiciel ne touchera plus au code de sa célèbre suite bureautique Office à venir dans sa mouture 2007; le logiciel va donc entrer en phase de production.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Beaucoup de bêta-testeurs&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Pour en arriver là, la société dirigée par Steve Ballmer aura mis à contribution de nombreux bêta-testeurs dont plus de 3,5 millions pour la bêta 2 d'Office 2007, grâce auxquels l'équipe en charge du développement de l'un des produits phares de Microsoft aura recueilli suffisamment de retour d'expériences afin d'en proposer une version que ses utilisateurs espèrent exempte de tout bug et au fonctionnement optimal.&lt;br /&gt;&lt;br /&gt;Pour Jeff Raikes, le président de la Division Entreprise chez Microsoft : "&lt;em&gt; Nous avons franchi la ligne d'arrivée en ce qui concerne le développement et l'équipe est en droit de célébrer cet événement comme il se doit. La sortie de la version RTM de &lt;strong&gt;Microsoft Office System 2007&lt;/strong&gt; signifie l'avènement des améliorations les plus significatives apportées aux produits de la suite logicielle &lt;strong&gt;depuis plus d'une dizaine d'années&lt;/strong&gt;. C'est gratifiant d'être en mesure de pouvoir envoyer à nos clients un produit qui va les aider à améliorer leur productivité.&lt;/em&gt; "&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Essayer avant d'acheter&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;A noter également que si pour le grand public, Office 2007 sera vraisemblablement disponible à compter du 30 janvier 2007, dès le 1er décembre via &lt;a href="http://www.generation-nt.com/actualites/20439/microsoft-office-site-online/" target="_blank"&gt;Office Online&lt;/a&gt;, des versions d'essai limitées dans le temps (60 jours) de certains produits de la suite bureautique seront gratuitement mises à disposition des internautes.Cette offre de " mise en bouche " ne concernera dans un premier temps que les USA et le Canada avant d'être étendue à 13 autres marchés (non précisés).&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.generation-nt.com/divers/click.php?id=7&amp;amp;url=http%3A%2F%2Fwww.microsoft.com%2Fpresspass%2Fpress%2F2006%2Fnov06%2F11-062007OfficeRTMPR.mspx" target="_blank"&gt;Consulter le communiqué de Microsoft&lt;/a&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;div align="left"&gt;Source :&lt;a href="http://www.generation-nt.com"&gt;www.generation-nt.com&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116302142552136330?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116302142552136330/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116302142552136330' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302142552136330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302142552136330'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/11/microsoft-office-system-2007-passe-en.html' title='Microsoft Office System 2007 passe en version RTM'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116302526545018707</id><published>2006-11-05T14:29:00.000-08:00</published><updated>2006-11-08T14:34:25.496-08:00</updated><title type='text'>Les outils de vérification linguistique et Microsoft Office 2007.</title><content type='html'>[An English version of this text can be found &lt;a href="http://blogs.msdn.com/naturallanguage/archive/2006/11/01/proofing-tools-and-office-2007.aspx"&gt;here on the Microsoft Natural Language Team’s blog&lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;Un utilisateur nous demandait il y a quelques jours s’il allait y avoir une version 2007 des Outils de vérification linguistique de Microsoft Office (beaucoup utilisent aussi le nom anglais &lt;em&gt;Proofing Tools Kit&lt;/em&gt; pour désigner ces outils).  La réponse n’est pas seulement « oui » et il m’a semblé intéressant de fournir quelques détails supplémentaires.&lt;br /&gt;&lt;br /&gt;Il y aura donc bien une version 2007 des Outils de vérification linguistique, comme c’était le cas pour les versions précédentes d’Office. Ces outils ne seront toutefois pas commercialisés de la même façon que pour Office 2003. Les Outils de vérification linguistique d’Office 2007 (Proofing Tools 2007) feront en fait partie d’un pack multi-langues qui comportera 3 CD. Les deux premiers CD contiendront tous les « packs de langues individuels », c’est-à-dire un ensemble composé des outils linguistiques d’une langue donnée (correcteur orthographique, correcteur grammatical, outil de césure, dictionnaire de synonymes…) ainsi que l’interface et les fichiers d’aide de l’utilisateur dans cette langue.  Le troisième CD contiendra tous les outils linguistiques à proprement parler.&lt;br /&gt;&lt;br /&gt;Si un utilisateur souhaite ajouter les outils linguistiques pour l’une ou l’autre langue supplémentaire (supposons par exemple qu’il désire disposer d’un correcteur orthographique portugais ou russe, des outils qui ne sont pas fournis par défaut dans sa version française ou anglaise d’Office 2007), il pourra télécharger les packs de langues individuels correspondant aux langues supplémentaires qui l’intéressent. Mais si quelqu’un installe de nombreuses langues disposant d’outils de vérification linguistique et ne souhaite pas installer les interfaces de l’utilisateur dans ces langues ou utiliser trop d’espace-disque, il pourra acheter la boite du pack multi-langues et utiliser le troisième CD. Les entreprises qui achèteront la licence multilingue pourront choisir la méthode de déploiement qui leur convient le mieux.&lt;br /&gt;&lt;br /&gt;Cette souplesse permettra de répondre aux souhaits des utilisateurs. Nous voyons régulièrement sur les forums de discussion (newsgroups, etc.) que de nombreux utilisateurs souhaitent ajouter à leur configuration les outils linguistiques pour une ou deux langues. Pouvoir télécharger et acheter directement un ensemble d’outils de vérification linguistique pour une langue supplémentaire donnée (un correcteur orthographique, un correcteur grammatical et un dictionnaire de synonymes, par exemple) devrait pouvoir satisfaire de nombreux utilisateurs.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;-- Thierry Fontenelle (Microsoft Natural Language Group)&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116302526545018707?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116302526545018707/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116302526545018707' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302526545018707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116302526545018707'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/11/les-outils-de-vrification-linguistique.html' title='Les outils de vérification linguistique et Microsoft Office 2007.'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116160315087497968</id><published>2006-10-13T10:10:00.000-07:00</published><updated>2006-10-23T04:43:26.016-07:00</updated><title type='text'>MOSS 2007: Gestion du contenu Web</title><content type='html'>Jusqu'à récemment, la stratégie de Microsoft en ce qui concerne la publication de contenu sur le Web était basée sur Microsoft Content Management Server (CMS) 2002. Pour les auteurs de contenu, CMS constituait un moyen structuré d'ajouter du contenu au site Web public d'une société en utilisant des pages dont la mise en page était de niveau professionnel. CMS fournissait également un schéma officiel où un utilisateur privilégié devait approuver toute modification apportée à la page avant qu'elle ne soit visible par les visiteurs du site Web. Bien qu'un lien fournisse un certain degré d'intégration entre CMS 2002 et SPS 2003, ces deux produits sont construits sur des architectures très différentes. Vous ne pouvez pas créer un site qui tire entièrement parti à la fois des fonctionnalités de gestion du contenu Web de CMS et des fonctionnalités de portail de SPS.&lt;br /&gt;Avec l'arrivée sur le marché de MOSS 2007, Microsoft recommande de migrer vers MOSS la gestion du contenu Web basée sur CMS. Cette migration aura évidemment des conséquences importantes sur des clients qui sont habitués au développement CMS. Si vous avez déjà utilisé CMS, il est important de noter que les concepts de canaux et de publications utilisés dans CMS n'existent pas dans l'infrastructure de gestion de contenu Web de MOSS 2007. En effet, l'infrastructure a été conçue à l'aide de blocs constitutifs WSS 3.0 simples, tels que les sites enfants, les modèles de page, les types de contenu, les bibliothèques de documents et les groupes de sécurité. Cette approche se prête à la création de solutions personnalisées qui développent l'infrastructure de gestion de contenu Web simple en utilisant des composants WSS standard tels que les workflows et les gestionnaires d'événements personnalisés.&lt;br /&gt;&lt;br /&gt;Lorsque vous devez associer votre marque à un site portail MOSS 2007, vous pouvez modifier une seule page maître ASP.NET pour personnaliser l'aspect de l'ensemble du site Web, comme vous le feriez dans une collection de sites WSS 3.0 standard. Cependant, MOSS 2007 étend cette fonctionnalité en introduisant un schéma de publication basé sur les mises en page. Une mise en page constitue une approche structurée permettant de collecter le contenu auprès des auteurs et de l'afficher sur une page d'un site portail. Parmi les mises en page fournies par MOSS 2007, citons les pages d'accueil, les articles et les nouvelles.&lt;br /&gt;&lt;br /&gt;Chaque mise en page est basée sur un type de contenu WSS et un modèle de page .aspx associé. En superposant les mises en page sur les types de contenu, MOSS vous permet d'ajouter des champs personnalisés qui stockeront différents types de contenu structuré tels que le HTML, les liens et les images. Une fois un champ personnalisé défini dans le type de contenu associé à une mise en page, ses données peuvent être liées au modèle de page .aspx associé à l'aide d'un nouveau composant MOSS 2007 appelé contrôle de champ. MOSS 2007 est livré avec plusieurs contrôles de champs, notamment un éditeur HTML complet et d'autres contrôles permettant de modifier des champs personnalisés basés sur des images et des liens. De nombreux contrôles de champs prennent en charge l'ajout de contraintes déclaratives supplémentaires pour que le contenu du portail conserve un format hautement structuré.&lt;br /&gt;&lt;br /&gt;L'infrastructure de la mise en page est extensible car les types de contenu WSS prennent en charge l'héritage. La personnalisation de l'une des mises en page intégrés en développant son type de contenu sous-jacent ou le modèle de page .aspx est une opération assez simple.&lt;br /&gt;&lt;br /&gt;En plus des contrôles de champs, un modèle de page .aspx d'une mise en page peut également contenir des contrôles serveur ASP.NET et des zones de composants WebPart. Une mise en page avec des zones de composants WebPart permet à l'auteur de contenu d'ajouter des composants WebPart affichant le contenu en dehors du schéma de la mise en page actuelle. MOSS 2007 propose plusieurs composants WebPart conçus pour être utilisés sur les pages de portail, notamment les composants WebPart Sommaire et Requête de contenu.&lt;br /&gt;&lt;br /&gt;Les modèles de page .aspx associés aux mises en page sont stockés avec la page maître du site portail dans la galerie de pages maîtres. La galerie de pages maîtres contient également une colonne de métadonnées afin d'associer chaque modèle de page .aspx à un type de contenu. Notez qu'il est possible d'avoir plusieurs mises en page, chacune ayant son propre modèle de page .aspx, associées au même type de contenu, ce qui est utile lorsque vous souhaitez créer des vues différentes pour le même ensemble de contenu structuré.&lt;br /&gt;Dès qu'un auteur de contenu crée une page de contenu depuis une mise en page, MOSS 2007 crée une instance du type de contenu associé et la stocke dans une bibliothèque de documents appelée Pages. Lorsqu'un auteur de contenu met à jour le contenu des champs personnalisés dans une mise en page, WSS stocke les données dans une structure définie par le type de contenu sous-jacent. Les instances de pages de contenu étant stockées dans une bibliothèque de documents WSS, l'infrastructure de gestion du contenu Web de MOSS peut profiter des fonctionnalités de base des bibliothèques de documents, telles que la gestion des versions, l'audit, l'approbation, les workflows, la configuration de la sécurité par document et le masquage de l'interface de sécurité.&lt;br /&gt;&lt;br /&gt;Par défaut, MOSS utilise les fonctionnalités de base de l'approbation de documents d'une bibliothèque de documents WSS afin de contrôler le moment où les visiteurs du site peuvent voir le contenu mis à jour. Cependant, l'infrastructure a été conçue pour simplifier l'association de workflows personnalisés avec la bibliothèque de documents Pages lorsque vous devez utiliser des fonctionnalités plus sophistiquées que l'approbation du contenu par défaut.&lt;br /&gt;&lt;br /&gt;Notez qu'une instance d'une page de contenu stockée dans la bibliothèque de documents ne constitue pas une copie du modèle de page. Elle contient en fait une logique de redirection afin de l'associer au modèle de page .aspx lors de l'exécution. Ainsi, lorsque le modèle de page .aspx est mis à jour, les pages de contenu déjà créées à partir de la mise en page associée sont toujours affectées.&lt;br /&gt;Un certain nombre d'autres fonctionnalités de MOSS 2007 concernent la gestion du contenu Web. MOSS fournit une structure pour les convertisseurs de documents, qui sont des composants conçus pour lire le contenu depuis un format externe, tel qu'un document Word, et le convertir dans un format pouvant être affiché dans une page de contenu. Il est prévu que MOSS 2007 soit livré avec plusieurs convertisseurs de documents ainsi qu'une structure pour créer et intégrer des convertisseurs de documents personnalisés.&lt;br /&gt;Dans MOSS, les fonctionnalités de déploiement du contenu vous permettent de transférer le contenu d'une collection de sites à une autre, ce qui est utile pour les sociétés qui préfèrent créer du contenu dans un environnement de test avant de le copier dans un environnement de production. Pour profiter des fonctionnalités de déploiement de contenu de MOSS 2007, vous devez configurer les chemins d'accès et les tâches. Un chemin d'accès définit une collection de sites comme source de contenu et une autre collection de sites comme cible du contenu. Lorsque vous avez défini un chemin d'accès, vous pouvez définir une ou plusieurs tâches pour déplacer le contenu de la source vers la cible. Les tâches peuvent être exécutées à la demande ou planifiées pour être exécutées ultérieurement ou selon une fréquence particulière.&lt;br /&gt;&lt;br /&gt;MOSS 2007 prend également en charge une fonctionnalité appelée variations de site. Elle est destinée aux sociétés qui doivent dupliquer le contenu d'un site pour la traduction dans plusieurs langues ou pour cibler différents types de périphériques d'affichage. Supposons par exemple que vous avez configuré la prise en charge de la variation pour l'anglais, l'allemand et l'espagnol. MOSS 2007 conserve une structure parallèle pour ces trois sites différents en ce qui concerne les pages et les sites enfants. Lorsqu'un auteur de contenu ajoute une nouvelle page au site de variation maître qui est en espagnol, MOSS ajoute automatiquement la même page à la structure des autres sites. MOSS peut également être configuré pour créer une tâche WSS marquant la traduction requise comme tâche à effectuer pour le traducteur. MOSS 2007 ne convertit pas réellement le contenu d'une langue à une autre, mais il permet de préserver la synchronisation de plusieurs sites en ce qui concerne la structure du contenu, ce qui est très important.&lt;br /&gt;MOSS 2007 dispose de plusieurs options de mise en cache. Certes, MOSS ne vous permet pas d'utiliser les directives de mise en cache de la sortie ASP.NET de la même façon que vous le faites dans une page ASP.NET standard, mais il propose une infrastructure plus sophistiquée permettant d'atteindre le même objectif. Vous pouvez activer la mise en cache de la sortie MOSS au niveau de la collection de sites. Lorsque vous utilisez ces fonctionnalités de mise en cache, vous configurez les profils de mise en cache afin de contrôler la mise en mémoire cache des éléments de la page et des pages complètes. Les développeurs doivent noter que MOSS fournit des caches dédiés pour les noeuds de navigation et le contenu renvoyé depuis des opérations de récupération qui peuvent être coûteuses, notamment l'exécution de requêtes WSS standard à l'aide d'un objet SPQuery et l'exécution de requêtes inter-site à l'aide d'un objet SPS SPSiteDataQuery.&lt;br /&gt;MOSS 2007 prend également en charge la mise en cache disque du frontal Web. Si vous activez ce cache, MOSS commence à écrire les fichiers volumineux qu'il récupère de la base de données SQL Server dans un cache spécial sur le système de fichiers local du serveur Web frontal. Grâce à cette procédure, vous n'avez plus besoin de déplacer continuellement et à la demande des fichiers .jpg, .png, .gif, .css et .js du serveur de base de données SQL Server aux serveurs Web frontaux.&lt;br /&gt;Enfin, il est important de noter que les sites de publication MOSS 2007 bénéficient des avancées de WSS 3.0 au niveau de la sécurité. WSS 3.0 est notamment basé sur l'infrastructure du fournisseur d'authentification ASP.NET 2.0. Contrairement à SPS 2003, qui est étroitement couplé à Active Directory, vous pouvez configurer un site portail MOSS 2007 pour qu'il utilise une authentification basée sur les formulaires. Vous pouvez ainsi stocker les informations d'identification des utilisateurs dans une base de données SQL Server ou dans un autre système de gestion des identités LDAP de votre choix.&lt;br /&gt;&lt;br /&gt;Source : Microsoft&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116160315087497968?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116160315087497968/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116160315087497968' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160315087497968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160315087497968'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/10/moss-2007-gestion-du-contenu-web.html' title='MOSS 2007: Gestion du contenu Web'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116180590208343457</id><published>2006-10-08T12:50:00.000-07:00</published><updated>2006-10-25T12:51:42.123-07:00</updated><title type='text'>EMC et Microsoft engagent un partenariat sur la gestion des contenus de l'entreprise</title><content type='html'>La plate-forme Documentum d'EMC sera étendue à SharePoint 2007, Microsoft Office 2007 et SQL Server 2005.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://france.emc.com/"&gt;EMC&lt;/a&gt;, spécialiste de la gestion d'informations et du stockage, et Microsoft viennent d'annoncer un alliance en matière de gestion des contenus de l'entreprise. Cette alliance a pour objectif d'intégrer les entreprises à la stratégie People-Ready de Microsoft. Elle permettra aux équipes informatiques de tirer parti des outils et applications de Microsoft pour gérer les processus critiques des entreprises via l'infrastructure de gestion de contenus de l'entreprise. EMC va introduire un ensemble de nouveaux outils de contenu et d'archivage renforçant l'intégration entre la plate-forme EMC de gestion des contenus Documentum et les solutions et la plate-forme technologiques de Microsoft.&lt;br /&gt;&lt;br /&gt;L'alliance étend l'utilisation de la plate-forme Documentum aux solutions technologiques de Microsoft : Microsoft Office SharePoint Server 2007, Microsoft Office 2007 et SQL Server 2005. Les utilisateurs de SharePoint pourront tirer parti des capacités avancées de gestion des contenus de l'entreprise de la plate-forme Documentum. La plate-forme permettra d'améliorer la gestion des données avancée, la gestion des processus d'entreprise, le traitement de l'image et le rich media (média enrichi) à partir des applications de Microsoft.&lt;br /&gt;&lt;br /&gt;Parallèlement, les solutions d'EMC permettront un archivage des contenus manuel ou automatique depuis un référentiel SharePoint vers un référentiel Documentum tout en gardant le contenu accessible depuis Microsoft Office SharePoint Server 2007. En archivant le contenu depuis SharePoint vers Documentum pour une gestion à long terme, les entreprises permettront à leurs équipes informatiques de répondre aux exigences de réglementation, de faciliter l'utilisation des contenus et d'optimiser leurs politiques et procédure de stockage à partir des applications Microsoft.&lt;br /&gt;&lt;br /&gt;EMC a également étendu l'utilisation de la plate-forme Documentum au support Microsoft SQL Server 2005. Cette intégration permettra aux clients de la plate-forme d'utiliser Microsoft SQL Server 2005 avec une performance améliorée et plus de fiabilité. Les utilisateurs de Microsoft SQL Server 2005 pourront améliorer leurs capacités de gestion de contenus au niveau de l'entreprise, bénéficiant de processus et référentiels maximisant les fonctionnalités et la flexibilité en matière de collaboration, d'automatisation et de sécurité.&lt;br /&gt;&lt;br /&gt;Source :&lt;a href="http://www.vnunet.fr/"&gt;www.vnunet.fr&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116180590208343457?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116180590208343457/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116180590208343457' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116180590208343457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116180590208343457'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/10/emc-et-microsoft-engagent-un.html' title='EMC et Microsoft engagent un partenariat sur la gestion des contenus de l&apos;entreprise'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116160476244593752</id><published>2006-10-04T18:54:00.000-07:00</published><updated>2006-10-23T04:59:22.473-07:00</updated><title type='text'>Microsoft et EMC : un Duet pour la gestion de contenu d'entreprise</title><content type='html'>Après son alliance avec SAP autour de Duet, Microsoft étend son partenariat avec EMC autour de la gestion de contenu d'entreprise. L'objectif, interconnecter Office 2007, SharePoint Server 2007 et SQL Server 2005 à Documentum.&lt;br /&gt;Une semaine après avoir inauguré InfoScape, plateforme de gestion de documents non-structurés pour Windows, EMC confirme son engagement avec Microsoft. Les deux partenaires ont décidé d'étendre leur alliance en rapprochant leurs technologies respectives de gestion de contenu. D'un côté, le très attendu système Office 2007 et sa brique collaborative SharePoint Server, et le complexe système Documentum de l'autre.&lt;br /&gt;Cette stratégie rappelle celle établie par Microsoft et SAP autour de Duet (connu auparavant sous le nom de code Mendocino), un module qui permet de manipuler les données ainsi que le process du PGI allemand depuis Outlook et Word. Mais plus globalement, cela s'inscrit dans le vaste projet LOBi, stratégie de Microsoft qui vise à rendre SharePoint intéropérable avec nombre d'applications d'entreprises.&lt;br /&gt;&lt;br /&gt;Sur le plan technologique, EMC prévoit de livrer pour la mi-2007 - date de sortie prévue d'Office 2007 - deux services de liaison entre Documentum et les outils de gestion de contenu et d'archivage de SharePoint : EMC Documentum Content Services for Microsoft SharePoint Server 2007 et EMC Documentum Archive Services for Microsoft SharePoint Server 2007. "Ces services seront payants, indique l'éditeur, et constitueront un moyen d'étendre les options de Documentum aux utilisateurs de SharePoint". A terme, EMC devrait également commercialiser un outil qui permettra de rechercher depuis Documentum dans SharePoint.&lt;br /&gt;&lt;br /&gt;Concrètement, les services d'archivage développés par EMC permettront d'archiver, manuellement ou automatiquement un flux de documents depuis Sharepoint vers un référentiel Documentum, et d'y accéder depuis SharePoint Server 2007, indique les porte-paroles d'EMC.&lt;br /&gt;EMC, également dans le cadre de ce partenariat, indique avoir rehaussé le niveau d'intégration entre SQL Server 2005 et Documentum. En mars dernier, les deux sociétés avaient noué un partenariat d'interopérabilité entre Exchange, SQL Server et Documentum.&lt;br /&gt;&lt;br /&gt;Source lemondeinformatique.fr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116160476244593752?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116160476244593752/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116160476244593752' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160476244593752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160476244593752'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/10/microsoft-et-emc-un-duet-pour-la.html' title='Microsoft et EMC : un Duet pour la gestion de contenu d&apos;entreprise'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116174271719842886</id><published>2006-09-28T19:04:00.000-07:00</published><updated>2006-10-24T19:18:37.226-07:00</updated><title type='text'>MOSS 2007 :super vidéo sur WCM</title><content type='html'>WCM = Web Content Management ou gestion de publication en francais&lt;br /&gt;&lt;br /&gt;Sous SPS 2003, la grande discussion était souvent entre la gestion de portail ou de publication&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; sous entendez, dois je utiliser plutot SPS ou CMS&lt;br /&gt;Le soucis étaient que les 2 etaient assez peu intégrables. Certes le projet SPARK permettait de les associer mais au prix de bien de soucis techniques pour un résultats pas si probants (cela n'engage que moi mais j'avoue avoir vu de superbes réalisations CMS SPS mais à quel cout !)&lt;br /&gt;&lt;br /&gt;Bref, il s'agissait un peu de la guerre du portail Microsoft contre Microsoft&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/logo_shrpoint_server.gif"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/logo_shrpoint_server.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sous SharePoint 2007, plus de soucis, désormais MOSS unifie les 2 produits : Le portail sait naturellement géré du push de contenu et de la publication ainsi que la notion d'aggregation et de WebPart&lt;br /&gt;&lt;br /&gt;Le meilleur des monde en sorte.&lt;br /&gt;Si ce n'est que le WCM est un métier à part comme la réalisation de portail&lt;br /&gt;il existe cependant les WebCasts suivants:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Gestion de page &lt;/li&gt;&lt;li&gt;ajout d'un nouveau type de contenu &lt;/li&gt;&lt;li&gt;Gestion de sa catégorisation &lt;/li&gt;&lt;li&gt;Mise en place des modéle &lt;/li&gt;&lt;li&gt;Publication et personnalisation via SharePoint Designer&lt;/li&gt;&lt;/ul&gt;Tout est présenté pas à pas dpuis la création même du site MOSS d'origine&lt;br /&gt;&lt;br /&gt;Vous comprendrez bien mieux l'interaction entre le framework SharePoint et le nouveau systéme WCM et vous decouvrirez l'ergonomie (hallucinante) offerte par SharePoint Designer pour publier les nouveaux modéles de contenu.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=05c82f45-0c38-4ecf-81c5-7e54d2b6a1e5&amp;displaylang=en"&gt;Office SharePoint Server 2007 Video: Web Content Management in Office SharePoint Server 2007&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;L'adéquation Client et Server de cette vidéo WCM montre bien la complémentarité et l'intégration d'Office System&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116174271719842886?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116174271719842886/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116174271719842886' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116174271719842886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116174271719842886'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/09/moss-2007-super-vido-sur-wcm.html' title='MOSS 2007 :super vidéo sur WCM'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116186754227364420</id><published>2006-08-02T04:56:00.000-07:00</published><updated>2006-10-26T06:31:27.616-07:00</updated><title type='text'>Microsoft dévoile C# v3 et le projet Linq (Suite)</title><content type='html'>&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;&lt;span style="color:#000099;"&gt;Linq &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Le principe de Linq consiste à proposer un ensemble d'opérateurs pouvant être redéfinis et enrichis par toute implémentation tierce. Microsoft fournit deux implémentations : &lt;strong&gt;Dlinq&lt;/strong&gt; pour la partie mapping objet/relationnel et &lt;strong&gt;Xlink&lt;/strong&gt; pour la partie XML. Cette architecture est illustré par le schéma suivant :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/LINQ.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 327px; CURSOR: hand; HEIGHT: 248px" height="280" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/LINQ.jpg" width="362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;&lt;span style="color:#6633ff;"&gt;Une requête simple&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;Le langage propose dorénavant la possibilité de requêter directement une collection (implémentant IEnumerable) en utilisant des mots clés réservés, démonstration :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;using&lt;/span&gt; System.Query;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;class&lt;/span&gt; &lt;span style="color:#009900;"&gt;app&lt;/span&gt; {&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;static void&lt;/span&gt; Main() {&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt;[] auteurs = { &lt;span style="color:#990000;"&gt;"Roger"&lt;/span&gt;, &lt;span style="color:#990000;"&gt;"Bilou"&lt;/span&gt;, &lt;span style="color:#990000;"&gt;"Thomas"&lt;/span&gt;,&lt;br /&gt;&lt;span style="color:#990000;"&gt;"Titi"&lt;/span&gt;, &lt;span style="color:#990000;"&gt;"Lou"&lt;/span&gt;, &lt;span style="color:#990000;"&gt;"Eric"&lt;/span&gt;,&lt;br /&gt;&lt;span style="color:#990000;"&gt;"Toto"&lt;/span&gt;};&lt;br /&gt;&lt;span style="color:#009900;"&gt;IEnumerable&lt;/span&gt;&lt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt;&gt; expr = &lt;span style="color:#3333ff;"&gt;from&lt;/span&gt; s &lt;span style="color:#3333ff;"&gt;in&lt;/span&gt; auteurs&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;where&lt;/span&gt; s.Length == 5&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;orderby&lt;/span&gt; s&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;select&lt;/span&gt; s.ToUpper();&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;foreach&lt;/span&gt; (&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt; item &lt;span style="color:#3333ff;"&gt;in&lt;/span&gt; expr)&lt;br /&gt;&lt;span style="color:#009900;"&gt;Console&lt;/span&gt;.WriteLine(item);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;L'exécution de cette fonction affichera : ROGER, BILOU .&lt;br /&gt;&lt;br /&gt;Sous le capot, les mots clés Where, OrderBy et Select sont pré-processés par le compilateur pour générer une expression plus proche de la sémantique habituelle des langages objets. Le code suivant est le résultat de la compilation.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;IEnumerable&lt;/span&gt;&lt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt;&gt; expr = names&lt;br /&gt;.Where(s =&gt; s.Length == 5)&lt;br /&gt;.OrderBy(s =&gt; s)&lt;br /&gt;.Select(s =&gt; s.ToUpper());&lt;br /&gt;&lt;br /&gt;Ceux qui ont l'habitude des outils de mapping objet/relationnel reconnaîtront une syntaxe proche de &lt;a href="http://www.hibernate.org/hib_docs/v3/reference/en/html/objectstate.html#objectstate-querying"&gt;l'arbre d'expressions &lt;/a&gt;utilisé par des outils tels que Hibernate. En revanche l'innovation est criante lorsqu'il s'agit du typage de l'expression. Là où la plupart des outils de mapping se reposent sur un requêtage plutôt textuel et donc faiblement typé, C# propose l'exécution d'une expression lambda. Il suffit d'appréhender le paramètres s=&gt;s.Length == 5 comme le code d'un simple délégué .NET qui sera passé au moteur de mapping.&lt;br /&gt;&lt;br /&gt;Lors de la phase de requêtage, C# créé un arbre d'expression (un arbre de délégués) constitué de toute une panoplie d'opérateurs spécialisés, de prédicats aux projections en passant par les filtres et les tris, puis réalise l'interprétation de cet arbre lors de l'invocation finale ... Toute la force du lambda calcul au service de C# et du mapping objet. Une approche totalement déroutante qui va certainement susciter de grands débats dans les jours prochains.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#6633ff;"&gt;&lt;strong&gt;&lt;em&gt;Mapping Objet/XML&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;Xlink est la partie mapping XML. Ce Framework propose toute une hiérarchie de classes (un équivalent de DOM). La création d'un document consiste à tirer partie de ces classes de la manière suivante :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt; myNs = "&lt;span style="color:#660000;"&gt;{http://dng.com}&lt;/span&gt;";&lt;br /&gt;XElement auteurs= &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs&lt;span style="color:#000000;"&gt;+"&lt;/span&gt;&lt;span style="color:#990000;"&gt;auteurs&lt;/span&gt;",&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;auteur&lt;/span&gt;",&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;nom&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;Thomas Gil&lt;/span&gt;"),&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;telephone&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;098766&lt;/span&gt;",&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XAttribute("&lt;span style="color:#990000;"&gt;ou&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;maison&lt;/span&gt;")),&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;telephone&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;098765&lt;/span&gt;",&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XAttribute("&lt;span style="color:#990000;"&gt;ou&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;bureau&lt;/span&gt;")),&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;adresse&lt;/span&gt;",&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;rue&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;5, rue titi&lt;/span&gt;"),&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; XElement(myNs+"&lt;span style="color:#990000;"&gt;ville&lt;/span&gt;", "&lt;span style="color:#990000;"&gt;Paris&lt;/span&gt;"),&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;Ce code génèrera le document suivant :&lt;br /&gt;&lt;br /&gt;&lt;auteurs xmlns="&lt;span color="&gt;http://dng.com&lt;/span&gt;"&gt;&lt;br /&gt;&lt;auteur&gt;&lt;br /&gt;&lt;nom&gt;Thomas gil&lt;/nom&gt;&lt;br /&gt;&lt;telephone ou="&lt;span color="&gt;maison&lt;/span&gt;"&gt;&lt;span style="color:#990000;"&gt;098766&lt;/span&gt;&lt;/telephone&gt;&lt;br /&gt;&lt;telephone ou="&lt;span color="&gt;bureau&lt;/span&gt;"&gt;&lt;span style="color:#990000;"&gt;098765&lt;/span&gt;&lt;/telephone&gt;&lt;br /&gt;&lt;adresse&gt;&lt;br /&gt;&lt;rue&gt;5, rue titi&lt;/rue&gt;&lt;br /&gt;&lt;ville&gt;Mercer Island&lt;/ville&gt;&lt;br /&gt;&lt;/adresse&gt;&lt;br /&gt;&lt;/auteur&gt;&lt;br /&gt;&lt;/auteurs&gt;&lt;br /&gt;&lt;br /&gt;Rechercher une information avec l'API Query consistera à faire :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;XElement&lt;/span&gt; auteurs = new &lt;span style="color:#009900;"&gt;XElement&lt;/span&gt;("&lt;span style="color:#990000;"&gt;auteurs&lt;/span&gt;",&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;from&lt;/span&gt; p &lt;span style="color:#3333ff;"&gt;in&lt;/span&gt; auteurs&lt;/strong&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;select new&lt;/strong&gt;&lt;/span&gt; &lt;strong&gt;&lt;span style="color:#009900;"&gt;XElement&lt;/span&gt;("&lt;span style="color:#990000;"&gt;auteur&lt;/span&gt;",&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; &lt;span style="color:#009900;"&gt;XElement&lt;/span&gt;("&lt;span style="color:#990000;"&gt;nom&lt;/span&gt;", p.Nom),&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;from&lt;/span&gt; ph &lt;span style="color:#3333ff;"&gt;in&lt;/span&gt; p.Telephone&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;select new&lt;/span&gt; &lt;span style="color:#009900;"&gt;XElement&lt;/span&gt;("&lt;span style="color:#990000;"&gt;telephone&lt;/span&gt;", ph)&lt;/strong&gt;&lt;br /&gt;)&lt;br /&gt;);&lt;br /&gt;&lt;span style="color:#009900;"&gt;Console&lt;/span&gt;.WriteLine(auteurs);&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;&lt;em&gt;Mapping Objet/Relationnel&lt;/em&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Le meilleur pour la fin. Que ceux qui pensaient que Microsoft avait abandonné à tout jamais le mapping objet/relationnel se rassurent. Non seulement il revient en force mais il sera au coeur de la plupart des futures applications WinFX de l'éditeur. S'il est vrai aujourd'hui qu'il reste encore des pans de fonctionnalités à combler, l'essentiel est là, il s'appelle &lt;strong&gt;dlinq&lt;/strong&gt;. Assez de littérature, voyons maintenant du code. Voici un exemple de création et modification d'enregistrement dans une base relationnelle sur le même modèle que l'exemple XML précédent :&lt;br /&gt;&lt;br /&gt;Northwind db = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Northwind("&lt;a href="file:///c://northwind//northwnd.mdf"&gt;c:\\northwind\\northwnd.mdf&lt;/a&gt;");&lt;br /&gt;&lt;span style="color:#009900;"&gt;// Recherche un auteur particulier&lt;/span&gt;&lt;br /&gt;string id = &lt;span style="color:#990000;"&gt;"1"&lt;/span&gt;;&lt;br /&gt;var auteur = db.Auteurs.First(c =&gt; c.AuteurID == id);&lt;br /&gt;&lt;span style="color:#009900;"&gt;// Change le nom de l'auteur&lt;/span&gt;&lt;br /&gt;auteur.Nom = &lt;span style="color:#990000;"&gt;"L'ami S'ami"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color:#009900;"&gt;// Recherche un article de cet auteur&lt;/span&gt;&lt;br /&gt;Article article= auteur.Articles[0];&lt;br /&gt;&lt;span style="color:#009900;"&gt;// L'enlève de la table et de la liste des articles&lt;/span&gt;&lt;br /&gt;db.Articles.Remove(article);&lt;br /&gt;&lt;span style="color:#009900;"&gt;// Créé un nouvel article et l'ajoute à la collection&lt;/span&gt;&lt;br /&gt;Article art = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Article{ articleId = 12345 };&lt;br /&gt;auteur.Articles.Add(art);&lt;br /&gt;&lt;span style="color:#009900;"&gt;// Demande au persistence manager de sauver l'objet&lt;/span&gt;&lt;br /&gt;db.SubmitChanges();&lt;br /&gt;&lt;br /&gt;Vous souhaitez faire une requête ? Rien de plus simple :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;var&lt;/span&gt; result =&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;from&lt;/span&gt; c &lt;span style="color:#3333ff;"&gt;in&lt;/span&gt; db.Auteurs&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;where&lt;/span&gt; c.Ville == "Paris"&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;select&lt;/span&gt; c;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;foreach&lt;/span&gt; (Auteur auteur in result)&lt;br /&gt;&lt;span style="color:#009900;"&gt;Console&lt;/span&gt;.WriteLine(auteur.Nom);&lt;br /&gt;&lt;br /&gt;Et le modèle du domaine ? Le voilà :&lt;br /&gt;&lt;br /&gt;[&lt;span style="color:#009900;"&gt;Table&lt;/span&gt;(Name="&lt;span style="color:#990000;"&gt;Articles&lt;/span&gt;")]&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public class&lt;/span&gt; &lt;span style="color:#009900;"&gt;Article&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;[&lt;span style="color:#009900;"&gt;Column&lt;/span&gt;(Id=&lt;span style="color:#3333ff;"&gt;true&lt;/span&gt;)]&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public int&lt;/span&gt; ArticleID;&lt;br /&gt;&lt;br /&gt;[&lt;span style="color:#009900;"&gt;Column&lt;/span&gt;]&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public string&lt;/span&gt; ArticleID;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;private&lt;/span&gt; &lt;span style="color:#009900;"&gt;EntityRef&lt;/span&gt;&lt;&lt;span style="color:#009900;"&gt;Auteur&lt;/span&gt;&gt; _Auteur;&lt;br /&gt;&lt;br /&gt;[&lt;span style="color:#009900;"&gt;Association&lt;/span&gt;(Storage="&lt;span style="color:#990000;"&gt;_Auteur&lt;/span&gt;", ThisKey="&lt;span style="color:#990000;"&gt;AuteurID&lt;/span&gt;")]&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public&lt;/span&gt; &lt;span style="color:#009900;"&gt;Auteur&lt;/span&gt; Auteur{&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;return&lt;/span&gt; &lt;span style="color:#3333ff;"&gt;this&lt;/span&gt;._Auteur.Entity; }&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;set&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;this&lt;/span&gt;._Auteur.Entity = &lt;span style="color:#3333ff;"&gt;value&lt;/span&gt;; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Une forme d'écriture très proche de ce qu'on retrouve sur le marché dans le domaine. Aujourd'hui, le Framework propose plusieurs opérateurs, de nombreuses fonctionnalités sont couvertes telles que :&lt;br /&gt;&lt;br /&gt;- le Lazy Loading (appelé Deffered Loading)&lt;br /&gt;- la gestion des relations (0,n - 1,1, etc..)&lt;br /&gt;- la gestion du cycle de vie d'une entité&lt;br /&gt;- les procédures stockées&lt;br /&gt;- Un générateur de modèle du domaine à partir d'un fichier de configuration (appelé SQLMetal)&lt;br /&gt;- Un générateur de fichier de configuration à partir d'un modèle du domaine&lt;br /&gt;- L'attachement et le détachement&lt;br /&gt;&lt;br /&gt;En revanche, il reste encore à couvrir :&lt;br /&gt;&lt;br /&gt;- L'héritage et les requêtes polymorphiques&lt;br /&gt;&lt;br /&gt;Quant aux transactions, voici un exemple qui devrait rassurer :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;using&lt;/span&gt;(&lt;span style="color:#009900;"&gt;TransactionScope&lt;/span&gt; ts = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; &lt;span style="color:#009900;"&gt;TransactionScope&lt;/span&gt;())&lt;br /&gt;{&lt;br /&gt;db.UseLocalTransactionsOnly = &lt;span style="color:#3333ff;"&gt;true&lt;/span&gt;;&lt;br /&gt;db.SubmitChanges();&lt;br /&gt;ts.Complete();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Tout naturellement l'API System.Transactions aura la charge de gérer les propriétés transactionnelles des entités. Enfin !&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Conclusion&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;C# V3 et le Framework Linq sont une révolution pour Microsoft même si aujourd'hui il est encore difficile d'entrevoir l'impact de tels changements. Jamais l'éditeur n'avait pris un tel risque technologique tant d'un point de vue de l'implémentation que du de design. Depuis la création de DNG, nous n'avons cesse d'insister sur l'importance des concepts de séparation des couches, de persistance, d'architecture orientées services. Tout ce dont on rêvait pour .NET prend aujourd'hui forme avec même une tournure plutôt radicale qui a tendance à dérouter. Utiliser des expressions lambda comme base d'un langage de requête, il fallait oser. Dorénavant à la question "where do you want to go today ?" difficile de répondre autrement que par "to the fucking shiping date ". Car à force d'attendre , on risque de perdre patience...&lt;br /&gt;&lt;br /&gt;Source :&lt;a href="http://www.dotnetguru.org/"&gt;http://www.dotnetguru.org/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116186754227364420?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116186754227364420/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116186754227364420' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116186754227364420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116186754227364420'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/08/microsoft-dvoile-c-v3-et-le-projet.html' title='Microsoft dévoile C# v3 et le projet Linq (Suite)'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116186317920529681</id><published>2006-07-28T03:04:00.000-07:00</published><updated>2006-10-26T06:35:21.373-07:00</updated><title type='text'>Microsoft dévoile C# v3 et le projet Linq</title><content type='html'>&lt;em&gt;&lt;span style="color:#330099;"&gt;Pas de doute, la PDC 2005 marque un tournant majeur dans la voie que semble empreinter l'éditeur de Redmond pour l'implémentation de ses produits futurs. Avec l'annonce du projet Linq et de C# V3, nombre d'idées reçus vont certainement volet en éclat. Si cette année "révolution" rime avec "innovation", l'éditeur devra confirmer les espérances que bon nombre de développeurs placent en C#. Voyons concrètement ce que Microsoft nous propose.&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;Les nouveautés de C# V3&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Il faut avouer que depuis quelques temps, les intentions d'Anders Heljberg étaient plus ou moins connus. L'architecte principal du langage C# souhaitait remettre l'accès aux données au centre des préoccupations de l'éditeur. Même si les rumeurs et les extrapolations allaient bon train, peu d'entre nous y voyaient les prémices de l'actuel Framework Linq. Microsoft, en l'espace de deux ans, s'est attaché à recréer tout un Framework de requêtage ou plutôt une sorte d'abstraction permettant le mapping (un terme jamais prononcé durant les sessions) de n'importe quel objet vers un stockage XML ou relationnel. Une abstraction entièrement basée sur ... &lt;strong&gt;les expressions lambda&lt;/strong&gt; et &lt;strong&gt;les méthodes anonymes&lt;/strong&gt;. Toute cette métamorphose a été rendu possible grâce à l'extension du langage et de la CLR. [ndm : Si vous ne connaissez pas les méthodes anonymes, &lt;a href="http://www.dotnetguru.org/articles/dossiers/anonymescsharp2/CS2_AnonymousMethod_FR.htm"&gt;cet article &lt;/a&gt;de Patrick Smacchia sera une excellente entrée en matière]&lt;br /&gt;&lt;br /&gt;Avant de nous intéresser à linq, voyons rapidement les nouveautés de C# V3.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;C# V3&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;span style="color:#000000;"&gt;Les nouveautés concernant C# V3 vont faire frémir les trois quart de la population de développeurs Microsoft. Ceux qui avaient encore un soupçon d'espoir de voir un jour réduire le fossé existant entre ex-développeurs VB (encore réfractaires à certaines évolutions de .NET) et développeurs C# confirmés, risquent d'en prendre un sacré coup au moral. Le langage devient de plus en plus élitiste et des concepts plus ou moins réservés habituellement aux langages fonctionnels (de la famille des Lisp) font leur apparition de manière quasiment généralisée.&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;&lt;span style="color:#6666cc;"&gt;Variables locales implicitement typées&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;Les variables locales implicitement typées permettent de déclarer un objet sans spécifier son type. Exemple :&lt;br /&gt;&lt;br /&gt;var x; &lt;span style="color:#009900;"&gt;// Erreur, aucun initialiseur permettant de retrouver le type &lt;/span&gt;&lt;br /&gt;var y = { 1, 2, 3 }; &lt;span style="color:#009900;"&gt;// Erreur, initialiseur de collection non permit &lt;/span&gt;&lt;br /&gt;var z = &lt;span style="color:#3333ff;"&gt;null&lt;/span&gt;; &lt;span style="color:#009900;"&gt;// Erreur, type null non autorisé&lt;br /&gt;&lt;/span&gt;var i = 5;&lt;br /&gt;var s = &lt;span style="color:#000000;"&gt;&lt;span style="color:#990000;"&gt;"Hello"&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;var d = 1.0;&lt;br /&gt;var numbers = &lt;span style="color:#3333ff;"&gt;new int&lt;/span&gt;[] { 1, 2, 3 };&lt;br /&gt;var orders = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; &lt;span style="color:#009900;"&gt;Dictionary&lt;/span&gt;&lt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt;, Order&gt;();&lt;br /&gt;&lt;br /&gt;Les expressions précédentes sont équivalentes à :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt; i = 5;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt; s = &lt;span style="color:#990000;"&gt;"Hello"&lt;/span&gt;;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;double&lt;/span&gt; d = 1.0;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt;[] numbers = &lt;span style="color:#3333ff;"&gt;new int&lt;/span&gt;[] { 1, 2, 3 };&lt;br /&gt;&lt;span style="color:#009900;"&gt;Dictionary&lt;/span&gt;&lt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt;, Order&gt; orders =&lt;span style="color:#3333ff;"&gt; new&lt;/span&gt; &lt;span style="color:#009900;"&gt;Dictionary&lt;/span&gt;&lt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt;, Order&gt;();&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;Les méthodes d'extension&lt;/span&gt;&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Si les méthodes d'extension sont bien parties pour faire bondir certains observateurs, replacés dans le contexte du langage de requête Linq, on comprend beaucoup mieux leur intérêt (même si ce concept n'a strictement rien d'objet).&lt;br /&gt;&lt;br /&gt;Lorsqu'un utilisateur invoque une méthode sur n'importe quelle instance d'un objet, .NET vérifie s'il existe une méthode susceptible de répondre à son besoin dans la classe source de l'objet. Le cas échéant il recherche la dite méthode dans les éventuelles classes d'extension. S'il trouve une signature correspondant à l'appel il invoque cette méthode en passant en paramètre l'instance en question. Exemple :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;namespace&lt;/span&gt; DNG.Extensions&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public static class&lt;/span&gt; MyExtension&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public static int&lt;/span&gt; ToInt32(this string s)&lt;br /&gt;{&lt;br /&gt;return Int32.Parse(s);&lt;br /&gt;}&lt;br /&gt;&lt;span style="color:#3366ff;"&gt;public static&lt;/span&gt; T ElementAt&lt;t&gt;(this T[] source, int index)&lt;br /&gt;{&lt;br /&gt;T result = source[index];&lt;br /&gt;return result;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Vous aurez remarqué au passage le nouveau mot clé "this" préfixant le premier argument. L'utilisation des extensions consiste à importer la classe statique puis à faire appel à une méthode d'instance :&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;using&lt;/span&gt; DNG.Extensions;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;string&lt;/span&gt; s = "1234";&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt; i = s.ToInt32(); &lt;span style="color:#009900;"&gt;// Exécute MyExtension.ToInt32(s)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt;[] digits = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt; a = digits.ElementAt(4); &lt;span style="color:#009900;"&gt;// Exécute MyExtension.ElementAt(digits, 4)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;&lt;/span&gt;&lt;br /&gt;Convaincu ?&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;Les expressions lambda&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Dans la continuité des méthodes anonymes de C# V2, les expressions lambda sont indéniablement la nouveauté la plus importante de C# V3. Cette fonctionnalité permet en particulier au Framework linq de proposer un typage sous forme de lambda expressions.&lt;br /&gt;&lt;br /&gt;Voici quelques exemple d'expressions lambda :&lt;br /&gt;&lt;br /&gt;x =&gt; x + 1 &lt;span style="color:#009900;"&gt;// Implicitement typé, expression de type corps&lt;/span&gt;&lt;br /&gt;x =&gt; { return x + 1; } &lt;span style="color:#009900;"&gt;// Implicitement typé, corps de délégué&lt;/span&gt;&lt;br /&gt;(int x) =&gt; x + 1 &lt;span style="color:#009900;"&gt;// Explicitement typé, expression de type corps&lt;/span&gt;&lt;br /&gt;(int x) =&gt; { return x + 1; } &lt;span style="color:#009900;"&gt;// Explicitement typé, corps de délégué&lt;/span&gt;&lt;br /&gt;(x, y) =&gt; x * y &lt;span style="color:#009900;"&gt;// Paramètres multiples&lt;/span&gt;&lt;br /&gt;() =&gt; Console.WriteLine() &lt;span style="color:#009900;"&gt;// Une expression sans paramètre, étrange hein :-)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;&lt;/span&gt;&lt;br /&gt;Ceux maîtrisant mieux les expressions sous la forme de délégués ont juste à imaginer qu'une expression lambda est simplement un délégué. Nous reviendrons dans d'autres articles sur leur utilisation, mais linq reste le meilleur cas d'exemple des expressions lambda.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#6633ff;"&gt;&lt;strong&gt;L'inférence de type&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#6633ff;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Lorsqu'une méthode générique est appelée sans spécifier d'argument, un processus appelé "inférence de type" s'attache à retrouver les différentes paramètres de la méthode "à inférer". Typiquement, une expression lambda passée en argument à une méthode générique déclenchera cette opération. Exemple :&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;List&lt;/span&gt;&lt;customer&gt; customers = GetCustomerList();&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;IEnumerable&lt;/span&gt;&lt;&lt;span style="color:#3366ff;"&gt;string&lt;/span&gt;&gt; names = customers.Select(c =&gt; c.Name);&lt;br /&gt;&lt;br /&gt;Évidemment, cette fonctionnalité a également une incidence sur la manière de résoudre la surcharge lorsqu'une expression lamda est passé en argument.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;Les initialiseurs d'objets et de collections&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Au rang des fonctionnalités controversées, les initialiseurs tiendront sûrement une bonne place. Ils remettent en cause un des fondements principaux de la programmation objet qui est que toute initialisation non proposée par un constructeur (d'instance ou statique) ne peut être considéré comme conforme au contrat de la classe.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public class&lt;/span&gt; Point&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;int&lt;/span&gt; x, y;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public int&lt;/span&gt; X { &lt;span style="color:#3333ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;return&lt;/span&gt; x; } &lt;span style="color:#3333ff;"&gt;set&lt;/span&gt; { x = &lt;span style="color:#3333ff;"&gt;value&lt;/span&gt;; } }&lt;br /&gt;public int Y { &lt;span style="color:#3333ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;return&lt;/span&gt; y; } &lt;span style="color:#3333ff;"&gt;set&lt;/span&gt; { y = &lt;span style="color:#3333ff;"&gt;value&lt;/span&gt;; } }&lt;br /&gt;}&lt;br /&gt;var a = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point { X = 0, Y = 1 };&lt;br /&gt;&lt;br /&gt;Cette écriture est sémantiquement égale à :&lt;br /&gt;&lt;br /&gt;var a = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point();&lt;br /&gt;a.X = 0;&lt;br /&gt;a.Y = 1;&lt;br /&gt;&lt;br /&gt;Pour aller plus loin, la classe suivante est un rectangle constitué de points :&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public class&lt;/span&gt; &lt;span style="color:#009900;"&gt;Rectangle&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;Point p1, p2;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public&lt;/span&gt; Point P1 { &lt;span style="color:#3333ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;return&lt;/span&gt; p1; } &lt;span style="color:#3333ff;"&gt;set&lt;/span&gt; { p1 = &lt;span style="color:#3333ff;"&gt;value&lt;/span&gt;; } }&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;public&lt;/span&gt; Point P2 { &lt;span style="color:#3333ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#3333ff;"&gt;return&lt;/span&gt; p2; } &lt;span style="color:#3333ff;"&gt;set&lt;/span&gt; { p2 = &lt;span style="color:#3333ff;"&gt;value&lt;/span&gt;; } }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Un rectangle peut donc être créé en utilisant des initialiseurs de points de la manière suivante :&lt;br /&gt;var r = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; &lt;span style="color:#009900;"&gt;Rectangle&lt;/span&gt; {&lt;br /&gt;P1 = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point { X = 0, Y = 1 },&lt;br /&gt;P2 = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point { X = 2, Y = 3 }&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;Ce qui génèrera le code suivant après traitement du compilateur :&lt;br /&gt;&lt;br /&gt;var r =&lt;span style="color:#3333ff;"&gt; new&lt;/span&gt; &lt;span style="color:#009900;"&gt;Rectangle&lt;/span&gt;();&lt;br /&gt;var __p1 = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point();&lt;br /&gt;__p1.X = 0;&lt;br /&gt;__p1.Y = 1;&lt;br /&gt;r.P1 = __p1;&lt;br /&gt;var __p2 = &lt;span style="color:#3333ff;"&gt;new&lt;/span&gt; Point();&lt;br /&gt;__p2.X = 2;&lt;br /&gt;__p2.Y = 3;&lt;br /&gt;r.P2 = __p2;&lt;br /&gt;&lt;br /&gt;Où __p1 et ___p2 sont des variables temporaires inaccessibles à l'utilisateur.&lt;br /&gt;&lt;br /&gt;Convaincu ?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://jirinet.blogspot.com/2006_08_01_jirinet_archive.html"&gt;Suite de l'article "&lt;strong&gt;&lt;span style="color:#6633ff;"&gt;LINQ&lt;/span&gt;&lt;/strong&gt;"&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116186317920529681?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116186317920529681/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116186317920529681' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116186317920529681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116186317920529681'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/07/microsoft-dvoile-c-v3-et-le-projet.html' title='Microsoft dévoile C# v3 et le projet Linq'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116160552142601646</id><published>2006-06-23T17:08:00.000-07:00</published><updated>2006-10-23T05:12:01.426-07:00</updated><title type='text'>Le PDF gratuit pour Office 2007</title><content type='html'>&lt;p&gt;Une nouvelle plutôt agréable pour les futurs utilisateurs de la suite bureautique de Microsoft Office 2007. La fonction de sauvegarde en format PDF sera disponible gratuitement dans la prochaine mouture de Office, à l'instar de OpenOffice.&lt;br /&gt;&lt;br /&gt;Il est vrai que OpenOffice - suite bureautique gratuite - propose cette fonctionnalité très pratique et qu'il aurait été surprenant de ne pas en disposer sous une suite payante comme Microsoft Office. Et pourtant, l'affaire était loin d'être conclue car Adobe (créateur du Format PDF) et Microsoft étaient plutôt en froid sur ce thème ces dernières semaines. Adobe, contrairement à Microsoft, ne voulait tout simplement pas que Office 2007 propose cette fonctionnalité par défaut sur la future suite bureautique. Les raisons étaient financières comme vous pouvez vous en douter. Et c'est donc à un compromis que sont parvenus les 2 géants.&lt;br /&gt;&lt;br /&gt;La fonction de sauvegarde sera donc accessible à tous les utilisateurs de Office 2007 mais il devront installer un plug-in pour y avoir accès.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116160552142601646?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116160552142601646/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116160552142601646' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160552142601646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116160552142601646'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/06/le-pdf-gratuit-pour-office-2007.html' title='Le PDF gratuit pour Office 2007'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116180634790259610</id><published>2006-06-04T12:55:00.000-07:00</published><updated>2006-10-25T12:59:07.903-07:00</updated><title type='text'>Open Text redéfinit la gestion des contenus d'entreprise avec une nouvelle plate-forme ECM unifiée</title><content type='html'>Open Text dévoile la nouvelle version de sa plate-forme ECM globale et unifiée. Conçue pour répondre aux besoins des entreprises du Global 2000, cette plate-forme étend très largement les fonctionnalités ECM en combinant la facilité d'utilisation et les fonctionnalités de travail collaboratif des produits Microsoft Office (Microsoft Office 2007 et Microsoft Office SharePoint Server 2007), avec l'évolutivité, la gestion du cycle de vie de l'information (ILM) et de gestion de contenu (ECM) de la suite ECM d'Open Text.&lt;br /&gt;&lt;br /&gt;Open Text travaille avec les prochaines versions de Microsoft Office pour proposer les solutions et technologies de gestion de contenu les mieux intégrées et les plus complètes du marché. Les services de métadonnées et de stockage de Livelink ECM étendent les capacités de travail collaboratif et de gestion de contenu web d'Office Portal Server 2007 et de nombreux autres services, pour permettre à l'entreprise de gérer, sur une plate-forme unique, l'ensemble du cycle de vie des contenus, de leur création jusqu'à leur archivage voire leur destruction. En s'appuyant sur cette plate-forme et sur les services de gestion de contenu proposés par Microsoft et la plateforme Office SharePoint Server 2007, Open Text délivre un ensemble de solutions complètes pour des besoins tels que la gestion de contrats, le règlement des litiges et les documents réglementés.&lt;br /&gt;&lt;br /&gt;Cette nouvelle plate-forme ECM intégrée est le résultat du partenariat stratégique conclu entre les deux acteurs en automne dernier; elle combine la puissance de la plate-forme Microsoft .NET avec la connaissance approfondie d'Open Text en matière de solutions applicatives orientées métier et de besoins des grandes entreprises en gestion de contenu. La plate-forme ECM résultant de cette alliance repose sur quatre couches majeures: - Une couche de présentation aux utilisateurs: les utilisateurs ont accès à une interface reposant sur leur environnement habituel que ce soit Microsoft Office ou un navigateur web. Un des principaux objectifs est de rendre l'ECM, en particulier les fonctions de Records Management et d'archivage, aussi transparentes que possible, et de réduire le besoin de formation.&lt;br /&gt;&lt;br /&gt;- Une couche métier: elle se compose de Sharepoint Uniform Services, ECM Components et d'extensions fonctionnelles offertes par Open Text. En outre, les applications composites d'Open Text fournissent des solutions complètes pour répondre à des exigences métier spécifiques ou à des besoins propres à certains secteurs d'activité.&lt;br /&gt;&lt;br /&gt;- Des référentiels transactionnels: ce sont des référentiels qui permettent de gérer des documents utilisés de façon régulière pour augmenter le chiffre d'affaires de l'entreprise. Ils peuvent inclure des référentiels SharePoint, des fichiers réseaux partagés ou des serveurs Microsoft Exchange.&lt;br /&gt;&lt;br /&gt;- Un référentiel d'archivage: il permet un stockage à long terme des contenus de l'entreprise, soit pour des besoins de pérennisation de l'information, soit pour répondre aux exigences juridiques ou de mise en conformité réglementaire. Cela réduit ainsi la volumétrie du système transactionnel tout en permettant au contenu d'être rapidement disponible et migré sur des systèmes de stockage à faible coût.&lt;br /&gt;&lt;br /&gt;Pour répondre rapidement aux besoins des clients et permettre des déploiements accélérés, Open Text délivre une suite complète de solutions génériques d'ECM. Dans quelques temps, de nouvelles solutions seront lancées pour répondre aux besoins de travail collaboratif, de content management et d'ILM de départements, services ou filiales de l'entreprise. Les solutions actuelles issues du partenariat Microsoft/Open Text sont aujourd'hui optimisées pour Microsoft Office 2003; des fonctionnalités plus poussées et de nouvelles solutions seront disponibles à l'automne 2006, avec le lancement de Microsoft Office 2007.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116180634790259610?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116180634790259610/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116180634790259610' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116180634790259610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116180634790259610'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/06/open-text-redfinit-la-gestion-des.html' title='Open Text redéfinit la gestion des contenus d&apos;entreprise avec une nouvelle plate-forme ECM unifiée'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116116837215012043</id><published>2006-05-07T03:41:00.000-07:00</published><updated>2006-10-18T03:46:12.153-07:00</updated><title type='text'>Microsoft Office 2007: plusieurs versions pour les entreprises</title><content type='html'>&lt;strong&gt;&lt;span style="color:#990000;"&gt;Stratégie&lt;/span&gt;&lt;/strong&gt; - La nouvelle édition de la suite bureautique destinée aux entreprises s’ouvre davantage au collaboratif, tout en musclant ses fonctions serveurs et de création web. Revue de détails.&lt;br /&gt;&lt;br /&gt;Outre les spécificités destinées au grand public, la version «Entreprise» de Microsoft 2007 intègre plusieurs évolutions notables. La firme de Redmond propose deux versions haut de gamme (en plus de ses éditions Professionnelle et Standard) : les éditions "Professionnel Plus" et "Entreprise", qui seront disponibles uniquement via le programme de licence en volume de Microsoft. Dans «Professionnel Plus», les produits Access et Publisher rejoignent les applications standard Word, Excel, PowerPoint et Outlook, ainsi que le programme de messagerie instantanée Office Communicator, le logiciel de création de formulaires InfoPath, ainsi que la gestion des formulaires et du contenu basé sur serveur.&lt;br /&gt;L'édition Entreprise inclut en outre Groove, le programme de collaboration développé par Ray Ozzie que Microsoft a acquis en mars 2005. Les utilisateurs ont le choix d'exploiter leur propre serveur Groove ou de s'abonner à un service hébergé. Pour les TPE, un service Groove Live sera proposé pour 79 dollars par utilisateur et par an.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#990000;"&gt;Capacités serveurs&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Par ailleurs, l'éditeur américain a présenté de nouvelles capacités serveur sur Office, sans détailler leur mise à disposition. Bon nombre seront incluses dans SharePoint Portal Server : gestion de portails étendue et gérant désormais d'autres tâches Office (formulaires, hébergement de feuilles de calcul, droits du contenu).Pour ceux qui n'ont pas besoin des capacités complètes de SharePoint, un programme serveur résumé à la gestion et à l'hébergement de formulaires est prévu. Mais comme d'autres programmes serveurs, Microsoft impose aux utilisateurs d'acheter une licence pour chaque PC accédant aux nouveaux serveurs Office. Ce sous deux formules : "Core CAL" combine les licences pour Windows Server, Exchange Server, Office SharePoint Portal Server et Systems Management Server ; "Enterprise CAL" ajoute les licences Microsoft Operations Manager, Microsoft Office Live Communications Server et des produits de sécurité et gestion des droits.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#990000;"&gt;Nouvel outil de développement de sites&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;La marque SharePoint portera aussi un nouveau programme de développement de sites web. Microsoft Office SharePoint Designer 2007, tout comme le logiciel Expression Web Designer, repose en partie sur l'actuel outil de création de pages web FrontPage, lequel est progressivement abandonné. Le programme de conception web SharePoint sera commercialisé à 299 dollars. Tarification et disponibilité d'Expression seront annoncées «prochainement». Reposant tous deux sur FrontPage, ces programmes ciblent des publics différents. Expression se destine davantage aux concepteurs web professionnels créant des sites basés sur des standards; SharePoint vise plus les employés cherchant à publier des informations sur sites web internes et à automatiser les processus métiers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116116837215012043?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116116837215012043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116116837215012043'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/05/microsoft-office-2007-plusieurs.html' title='Microsoft Office 2007: plusieurs versions pour les entreprises'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-114673475371360446</id><published>2006-05-04T02:22:00.000-07:00</published><updated>2006-05-04T02:25:53.726-07:00</updated><title type='text'>Microsoft dévoile Atlas, son OS Web</title><content type='html'>&lt;div align="justify"&gt;&lt;strong&gt;La firme de Redmond présentait il y a quelques jours, à Las Vegas, sa stratégie en matière de Web 2.0.&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Microsoft a inauguré il y a quelques jours à Las Vegas sa première conférence destinée au Web de deuxième génération. Regroupant 1 000 développeurs, architectes et designers du monde entier, MIX06 a été l'occasion pour Bill Gates de présenter sa stratégie Web 2.0. Pour le fondateur de Microsoft, « les applications Web et traditionnelles sont en train d'adopter le meilleur de chacun des deux mondes. Il est désormais temps de combiner les services des sites Web pour créer de nouvelles applications en ligne ». &lt;/div&gt;&lt;br /&gt;&lt;strong&gt;La Toile comme plate-forme de développement&lt;/strong&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;Microsoft embrasse donc pleinement le concept de plate-forme Web et compte jouer un rôle majeur sur ce marché, grâce à trois composants : Internet Explorer 7.0, Atlas, et Windows Live. D'après ce concept, chaque site joue le rôle de composant logiciel ou de base de données.&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;Les services et données sont exposés à l'aide d'une interface de programmation simple (API Rest, fichiers XML, etc.). Si bien qu'il suffit d'assembler plusieurs sites pour créer une nouvelle application en ligne. La Toile devient alors une gigantesque plate-forme de développement, et le navigateur, un système d'exploitation permettant d'exécuter ces applications Web 2.0.&lt;br /&gt;&lt;br /&gt;Microsoft compte réitérer le succès de Windows sur le Web, grâce à sa plate-forme Windows Live et à son OS Web, Atlas. Windows Live facilite le développement d'applications Web en fournissant des services de collaboration et d'authentification des utilisateurs. On peut la comparer à une version Web de Windows Server. Atlas est une bibliothèque de fonctions qui est mise en oeuvre dans le navigateur et qui fournit un ensemble de services - composants graphiques, canal de communication avec le serveur, etc. - facilitant le développement d'une application Web cliente reposant sur l'architecture Ajax (Asynchronous JavaScript and XML).&lt;br /&gt;&lt;br /&gt;On peut, dans une certaine mesure, comparer Atlas à une version en ligne de Windows XP. Contrairement aux idées reçues, Atlas fonctionne avec tous les navigateurs - Internet Explorer, Mozilla, Firefox, Safari, etc. - et ne nécessite pas impérativement de technologie Microsoft côté serveur : les développeurs PHP et Java peuvent donc tirer parti d'Atlas dans leur développement. Bien entendu, les développeurs Microsoft disposent d'une excellente intégration d'Atlas avec ASP.NET et Visual Studio .NET. Une préversion (CTP, Community Technology Preview) d'Atlas est téléchargeable gratuitement sur le site de l'éditeur.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-114673475371360446?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/114673475371360446/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=114673475371360446' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/114673475371360446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/114673475371360446'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/05/microsoft-dvoile-atlas-son-os-web.html' title='Microsoft dévoile Atlas, son OS Web'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-116116875164595439</id><published>2006-02-22T10:53:00.000-08:00</published><updated>2006-10-18T03:52:31.650-07:00</updated><title type='text'>Microsoft dévoile Microsoft Office system 2007</title><content type='html'>&lt;em&gt;Microsoft dévoile la future composition de la plateforme Microsoft® Office system 2007, auparavant connus sous le nom de code Microsoft Office « 12 », constitués de suites, d’applications, de serveurs et de services innovants et perfectionnés, disponibles d’ici la fin de l’année 2006. La version 2007 a été conçue pour améliorer l’efficacité individuelle, pour simplifier la collaboration, les processus métier et la gestion des contenus d’entreprise. Microsoft proposera notamment de nouvelles offres améliorées permettant aux clients d’acquérir les solutions qui correspondent le mieux à leurs besoins métiers spécifiques.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Sur le poste de travail, la version Microsoft Office 2007 se déclinera en nouvelles offres adaptées pour les organisations ou les particuliers. Ils bénéficieront en outre d’une meilleure efficacité grâce à une nouvelle interface utilisateur orientée résultats.&lt;br /&gt;&lt;br /&gt;Pour les clients des licences en volume, Microsoft Office Professionnel Plus 2007 [1] (qui prend la suite de Microsoft Office Professionnel Édition Entreprise 2003) proposera des solutions perfectionnées pour la gestion de l’information et la collaboration, grâce à son intégration avec les nouvelles fonctionnalités de Microsoft Office SharePoint® Server 2007 et à l’inclusion de Microsoft Office Communicator. De plus, une nouvelle offre, intitulée Microsoft Office Enterprise 2007, s’appuiera sur les fonctionnalités d’Office Professional Plus 2007 en développant ses scénarios de collaboration et de mobilité avec l’intégration de Microsoft Office Groove® 2007 et de Microsoft Office OneNote® 2007.&lt;br /&gt;&lt;br /&gt;Enfin, les particuliers pourront également bénéficier de toute la puissance d’Office à la maison : Microsoft Office Home and Student 2007, la nouvelle version d’Office Étudiants/Enseignants/Élèves Version Éducation 2003, a été conçu pour les utilisateurs à domicile.&lt;br /&gt;&lt;br /&gt;Avec Microsoft Office Groove 2007, la nouvelle version de Groove Virtual Office, les équipes pourront collaborer de manière dynamique au sein d’espaces de travail collaboratifs, quels que soient le site et la connexion réseau utilisés.&lt;br /&gt;Microsoft Office SharePoint Designer 2007, fondé en partie sur FrontPage® 2003, est un outil de conception Web de nouvelle génération. Grâce à cet outil, les utilisateurs pourront développer et personnaliser des sites Web Microsoft Office SharePoint et créer des workflows dynamiques dans les environnements Office SharePoint.&lt;br /&gt;&lt;br /&gt;Fondée sur les fonctionnalités serveur Microsoft Office existantes, Office 2007 apportera de nouvelles solutions pour le partage collaboratif, l’analyse et la gestion des informations. Dans le cadre de cette version, Microsoft introduit en effet un ensemble complet de nouveaux serveurs qui intégreront les solutions sur l’ensemble des scénarios de collaboration, de gestion des contenus d’entreprise (ECM) et des formulaires, d’analyse décisionnelle (BI) et de gestion des projets d’entreprise.&lt;br /&gt;&lt;br /&gt;Office SharePoint Server 2007 sera alors le seul serveur à unifier la gestion des portails et des contenus ainsi que les fonctionnalités d’analyse et de processus métier. Grâce à ce logiciel serveur, les clients bénéficieront d’une meilleure collaboration, prendront des décisions mieux adaptées et contrôleront le contenu sur l’ensemble des applications métier.&lt;br /&gt;&lt;br /&gt;Des serveurs spécialisés tels que Microsoft Office Project Server 2007, Microsoft Office Project Portfolio Server 2007 et Microsoft Office Forms Server 2007 fourniront, respectivement, des solutions de gestion de projet et de portefeuille, et de gestion de formulaires électroniques. De surcroît, Microsoft Office Groove Server 2007 offrira les fonctions centralisées de gestion, de relais et d’intégration des données nécessaires aux utilisateurs pour déployer Office Groove 2007 dans toute l’organisation et Microsoft Office Groove Enterprise Services, des services de gestion et de relais des données, économiques et hébergés, pour des déploiements plus restreints.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-116116875164595439?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/116116875164595439/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=116116875164595439' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116116875164595439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/116116875164595439'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/02/microsoft-dvoile-microsoft-office.html' title='Microsoft dévoile Microsoft Office system 2007'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113896684747353108</id><published>2006-02-03T03:39:00.000-08:00</published><updated>2006-02-03T03:40:55.520-08:00</updated><title type='text'>Lancement d'une suite bureautique complète d'intégration SOA par iWay Software</title><content type='html'>A l'attention des rédacteurs des chroniques affaires et technologie&lt;br /&gt;&lt;br /&gt;Lisez l'article sur cette page :&lt;br /&gt;&lt;a href="http://www.newswire.ca/en/releases/archive/February2006/02/c3093.html"&gt;http://www.newswire.ca/en/releases/archive/February2006/02/c3093.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113896684747353108?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113896684747353108/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113896684747353108' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113896684747353108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113896684747353108'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/02/lancement-dune-suite-bureautique.html' title='Lancement d&apos;une suite bureautique complète d&apos;intégration SOA par iWay Software'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113891748580592120</id><published>2006-02-02T13:51:00.000-08:00</published><updated>2006-02-02T14:06:32.756-08:00</updated><title type='text'>Comment personnaliser une DataGrid WinForm</title><content type='html'>Pour les développeurs des applications Winform, voici un petit document qui montre la manière de personnaliser un contrôle DataGrid. &lt;a href="http://www.microsoft.com/downloads/info.aspx?na=90&amp;p=&amp;amp;SrcDisplayLang=fr&amp;SrcCategoryId=&amp;amp;SrcFamilyId=914dc2d3-3ee5-44f7-a0aa-ef4717dc3615&amp;amp;u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2ff%2fe%2f9%2ffe956152-2556-4b72-8bce-9aea937a68e9%2fComment+personnaliser+une+DataGrid+WinForm.doc"&gt;Télécharger ici&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113891748580592120?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113891748580592120/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113891748580592120' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113891748580592120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113891748580592120'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2006/02/comment-personnaliser-une-datagrid.html' title='Comment personnaliser une DataGrid WinForm'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113260009062019236</id><published>2005-11-13T11:02:00.000-08:00</published><updated>2005-11-21T11:09:57.340-08:00</updated><title type='text'>Content Management Server 2002 SP2- Windows 2003</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/CMS.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/CMS.jpg" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;Description :&lt;br /&gt;&lt;/strong&gt;Content Management Server 2002 SP2 est désormais compatible avec Visual Studio 2005 et SQL Server 2005. Le Service Pack 2 est également compatible avec les versions compatibles x64 de Windows en mode émulation 32 bits.&lt;br /&gt;&lt;br /&gt;Ce logiciel a déjà été téléchargé 16 fois.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Télécharger ce logiciels : &lt;a href="http://www.laboratoire-microsoft.org/d/?id=17024"&gt;Content Management Server 2002 SP2&lt;/a&gt;(6,3 Mo / v 1.0)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Consignes :&lt;br /&gt;&lt;/strong&gt;Vous devez avoir WinZip pour décompresser ce logiciels .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113260009062019236?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113260009062019236/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113260009062019236' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113260009062019236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113260009062019236'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/11/content-management-server-2002-sp2.html' title='Content Management Server 2002 SP2- Windows 2003'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113087171938949497</id><published>2005-10-31T10:45:00.000-08:00</published><updated>2005-11-01T11:01:59.400-08:00</updated><title type='text'>Microsoft Monad bêta 2 pour .NET 2.0</title><content type='html'>&lt;strong&gt;Microsoft présente la deuxième version bêta de sa surcouche logicielle "Monad" pour .NET Framework 2.0.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;On s'en souvient, à peine dévoilée, la nouvelle surcouche logicielle&lt;em&gt; (shell)&lt;/em&gt; &lt;strong&gt;"Monad"&lt;/strong&gt; de &lt;strong&gt;Microsoft&lt;/strong&gt;, alors développée en conjonction avec la précédente version de &lt;strong&gt;.NET Framework&lt;/strong&gt;, avait &lt;a href="http://www.generation-nt.com/actualites/8477/Windows-Vista-premier-virus-identifie/" target="_blank"&gt;défrayé la chronique&lt;/a&gt;. En cause, une faille qui n'en était pas vraiment une, et une fonctionnalité trop permissive, qui autorisait l'exécution de toutes sortes de lignes de commande --la base même de ce "shell"-- y compris les plus dangereuses.&lt;br /&gt;&lt;br /&gt;Depuis, Microsoft s'est quelque peu amendé, indiquant que "Monad" ne serait pas livrée en même temps que &lt;strong&gt;Windows Vista&lt;/strong&gt;, appelée à remplacer &lt;strong&gt;Windows XP&lt;/strong&gt; à la fin de l'année prochaine. Entre temps, le développement de cette partie importante du système d'exploitation de Redmond s'est poursuivi, et Microsoft nous en présente aujourd'hui la version "bêta 2" conçue pour&lt;strong&gt; .NET Framework 2.0&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Comme c'est écrit &lt;a href="http://www.generation-nt.com/divers/click.php?id=7&amp;url=http%3A%2F%2Fwww.microsoft.com%2Fdownloads%2Fdetails.aspx%3FFamilyID%3D766e6908-354d-44d4-80fd-73e172b8e85d%26DisplayLang%3Den" target="_blank"&gt;sur la page dévolue au téléchargement de "Monad"&lt;/a&gt;, ce dernier permet de piloter votre système d'exploitation autrement que par le biais de l'interface graphique.&lt;br /&gt;&lt;br /&gt;En d'autres termes, là où vous aviez pris l'habitude de simplement cliquer sur une icône ou un lien, et de laisser le système gérer "en aveugle" la suite des opérations, vous pouvez désormais entrer vous même les commandes adéquates, soit en ligne de commande (une fonction qui existe déjà sous Windows XP), soit au moyen de fichiers script plus ou moins complexes.&lt;br /&gt;&lt;br /&gt;On l'aura compris, "Monad" ne s'adresse pas vraiment aux novices en informatique, mais plutôt aux développeurs et/ou administrateurs. Parmi les caractéristiques mises en avant par Microsoft pour cette technologie, citons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Une navigation simplifiée, à base de lignes de commande, à travers le système d'exploitation, y compris pour l'exploration de vos différents lecteurs, fichiers de démarrage et base de registre;&lt;/li&gt;&lt;li&gt;Une possibilité d'extension des commandes, qui permet à un administrateur d'écrire ses propres commandes ou scripts, voire de modifier des commandes et scripts existants, et de créer pour son "shell" ses propres outils;&lt;/li&gt;&lt;li&gt;Une manipulation améliorée des "objets", autrement dit des programmes dont l'exécution est perceptible par l'utilisateur via l'interface graphique. Les objets peuvent être redirigés vers des outils de développement tiers, voire vers des bases de données, d'où ils seront accessibles depuis un réseau;&lt;/li&gt;&lt;li&gt;Un contrôle direct des données système, sans avoir à parcourir d'interminables successions de lignes de code à la recherche d'éventuelles erreurs;&lt;/li&gt;&lt;li&gt;Des fonctions de dédoublement (alias) et de formatage améliorées;&lt;/li&gt;&lt;li&gt;Un support natif pour les scripts et lignes de commandes développées pour les versions précédentes des "shells" de Windows.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;"Monad" est compatible avec &lt;strong&gt;Windows Vista&lt;/strong&gt; (pour ceux qui ont réussi à mettre la main sur une copie du futur système d'exploitation de Microsoft), &lt;strong&gt;Windows XP Service Pack 2&lt;/strong&gt; et &lt;strong&gt;Windows Server 2003 Service Pack 1&lt;/strong&gt;.  Il existe pour les versions &lt;strong&gt;x86&lt;/strong&gt;, et &lt;strong&gt;x64&lt;/strong&gt; (64-bit) lorsqu'elles existent, de ces  systèmes.&lt;/p&gt;&lt;p&gt; A noter que l'installation de cette nouvelle version de "Monad" bêta 2 suppose la présence préalable du récent &lt;strong&gt;.NET Framework Version 2.0&lt;/strong&gt; (en version définitive ou &lt;strong&gt;Release Candidate&lt;/strong&gt;), sorti voici à peine quelques jours.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113087171938949497?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113087171938949497/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113087171938949497' title='2 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087171938949497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087171938949497'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/10/microsoft-monad-bta-2-pour-net-20.html' title='Microsoft Monad bêta 2 pour .NET 2.0'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113087055210853718</id><published>2005-10-28T10:39:00.000-07:00</published><updated>2005-11-01T10:42:32.123-08:00</updated><title type='text'>Microsoft déploie progressivement sa nouvelle panoplie d'outils de développement.</title><content type='html'>A quelques jours de l'apparition sous les feux de la rampe des applications &lt;a href="http://www.generation-nt.com/actualites/9577/SQL-Server-et-Visual-Studio-2005-a-la-fete/"&gt;&lt;strong&gt;Visual Studio 2005&lt;/strong&gt; et &lt;strong&gt;SQL Server 2005&lt;/strong&gt;&lt;/a&gt;, toutes deux prévues pour le 7 novembre prochain (et non le 8, comme pressenti un moment), Microsoft lance la version finale de son logiciel de création de programmes pour Windows, .NET Framework 2.0, qui sera en outre intégré en natif dans &lt;a href="http://www.generation-nt.com/actualites/9843/Windows-Vista-le-25-07-2006-chez-les-OEM/" target="_blank"&gt;Windows Vista&lt;/a&gt;, qui succèdera en fin d'année 2006 à l'actuel Windows XP.&lt;br /&gt;&lt;br /&gt;Selon l'éditeur de Redmond, cette nouvelle mouture de .NET Framework améliore le caractère évolutif et les performances des applications créées pour Windows, de même que l'utilisation de la mémoire cache; elle est compatible avec davantage de programmes qui supportent ASP .NET, ses outils de contrôle et ses services.&lt;br /&gt;&lt;br /&gt;Vous pouvez télécharger .NET Framework 2.0 depuis le site &lt;a href="http://www.generation-nt.com/divers/click.php?id=225&amp;amp;url=http%3A%2F%2Ffileforum.betanews.com%2Fdetail%2FMicrosoft_NET_Framework_x86%2F1016688677%2F1" target="_blank"&gt;BetaNews&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113087055210853718?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113087055210853718/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113087055210853718' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087055210853718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087055210853718'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/10/microsoft-dploie-progressivement-sa.html' title='Microsoft déploie progressivement sa nouvelle panoplie d&apos;outils de développement.'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113087355094547141</id><published>2005-10-26T11:29:00.000-07:00</published><updated>2005-11-01T11:32:30.946-08:00</updated><title type='text'>Réunion de communauté</title><content type='html'>&lt;p&gt;La troisième « .Net Pizza Party » aura lieu le Jeudi 27 Octobre 2005, de 21h00 à 23h00, dans la grande salle de conférence du TechnoPark de Casablanca (Route de Nouasser, en face de Marjane).&lt;br /&gt;&lt;br /&gt;Les « .Net Pizza Party » ont pour objectifs de :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;S'enrichir mutuellement en échangeant entre nous nos connaissances et expériences,Découvrir les nouveautés Microsoft (Produits/Technologies).&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Et ce dans une ambiance décontractée, autour d''un dîner.&lt;br /&gt;Cette année, nous allons notamment découvrir ensemble :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SQL Server 2005 &lt;/li&gt;&lt;li&gt;Framework .Net 2.0 &lt;/li&gt;&lt;li&gt;Visual Studio .Net 2005 &lt;/li&gt;&lt;li&gt;Visual Studio Team System &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113087355094547141?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113087355094547141/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113087355094547141' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087355094547141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087355094547141'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/10/runion-de-communaut.html' title='Réunion de communauté'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113261305049517219</id><published>2005-10-07T18:40:00.000-07:00</published><updated>2005-11-21T14:44:10.496-08:00</updated><title type='text'>ClubSPS :espace communautaire et collaboratif centré sur les technologies SharePoint TM de Microsoft.</title><content type='html'>Vous trouverez sur ce site toutes les informations relatives à celles-ci.Comme pour tout club, l'intérêt est de partager et confronter nos expériences, nos points de vue, nos idées et nos connaissances sur SharePoint TM afin d'améliorer notre savoir-faire.&lt;br /&gt;&lt;br /&gt;La diversité créant la richesse, ce Club rassemble plusieurs profils (développeurs, consultants et responsables fonctionnels, MVP, MVS, administrateurs techniques...) Dans l'intérêt de tous, n'hésitez pas à lire les news, vous abonner, participer aux WSS, nous contacter par mails et faire vivre le ClubSPS.&lt;br /&gt;&lt;br /&gt;URL : &lt;a href="http://www.clubsps.org/default.aspx"&gt;http://www.clubsps.org/default.aspx&lt;/a&gt;&lt;br /&gt;Bonne navigation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113261305049517219?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113261305049517219/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113261305049517219' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261305049517219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261305049517219'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/10/clubsps-espace-communautaire-et.html' title='ClubSPS :espace communautaire et collaboratif centré sur les technologies SharePoint TM de Microsoft.'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113259950385876118</id><published>2005-09-19T13:31:00.000-07:00</published><updated>2005-11-21T10:58:23.873-08:00</updated><title type='text'>WSS V3, SharePoint en force pour le futur</title><content type='html'>&lt;p&gt;L'annonce de SharePoint v3 n'a pas été juste un happening, présentation, vidéos et annonces ont été de la parti !!!&lt;/p&gt;&lt;p&gt;Vidéo : &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://channel9.msdn.com/Showpost.aspx?postid=114720"&gt;Julie Larson-Green - Diving into the new Office 12&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/winme/0509/25074/ChrisCap_Office12_mbr.asx"&gt;Chris Capossela demonstrates Office "12"&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://channel9.msdn.com/Showpost.aspx?postid=115383"&gt;PJ Hough and others - First look at next version of Sharepoint&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://channel9.msdn.com/Showpost.aspx?postid=115364"&gt;Rob Lefferts - Sharepoint Services and Workflow&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Les sessions (surtout de &lt;a href="http://blogs.developpeur.org/themit/gallery/image/600.aspx"&gt;Mike Ammerlaan&lt;/a&gt;) : &lt;a href="http://www.wssdemo.com/Pages/PDC05.aspx?menu=Resources"&gt;PDC05 SharePoint v3 related PPT's&lt;/a&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;OFF308 Windows SharePoint Services 'v3': Creating and Defining Custom Templates, Sites, Features, and Solutions &lt;/li&gt;&lt;li&gt;OFF405 Windows SharePoint Services: Using ASP.NET 2.0 Technology to Extend Pages, Sites, and Server Farms &lt;/li&gt;&lt;li&gt;OFF409 Windows SharePoint Services: Advancements in Document, Content, and Data Storage &lt;/li&gt;&lt;li&gt;OFF415 Windows SharePoint Services: Developing Custom Workflows&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Les blogs (à outrance) &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/mikefitz/default.aspx"&gt;Mike Fitzmaurice &lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://weblogs.asp.net/jan/"&gt;Jan Tielens' Bloggings&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Du trés grand et du lourd est en train de se déssiner avec la technologie SharePoint&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Refondu en ASP.Net 2.0 : Bonjour Atlas, Master Pages et les WebParts 2.0 &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Son of SmartPart : et vi de l'ASP.Net 2.0 dans la version actuel de WSS !!!&lt;/strong&gt; &lt;/li&gt;&lt;li&gt;Du Rss de partout &lt;/li&gt;&lt;li&gt;Une gestion des données en mode asnychone ou en mobilité &lt;/li&gt;&lt;li&gt;Un historique avec comparaison des versions ! &lt;/li&gt;&lt;li&gt;Synchro des mails. &lt;/li&gt;&lt;li&gt;Des blogs et du Wiki (dis Nix, je peut avoir mon blog en WSS v3 dis plus tard ??? ) &lt;/li&gt;&lt;li&gt;Un service de recherche autonome &lt;/li&gt;&lt;li&gt;Un moteur de Worklows Windows et non que SharePoint &lt;/li&gt;&lt;li&gt;La sécurité par élements et le multilingues &lt;/li&gt;&lt;li&gt;des catalogues de tout les types, du site a son frontal en passant par les listes &lt;/li&gt;&lt;li&gt;Ghosting everytime avec Frontpage &lt;/li&gt;&lt;li&gt;UI : Menu d'action, BreadCrumb, Cross browser, .. &lt;/li&gt;&lt;li&gt;et encore et encore : &lt;a id="viewpost.ascx_TitleUrl" href="http://www.sharepointblogs.com/dustin/archive/2005/09/14/3503.aspx"&gt;SharePoint "V3.0" Features&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113259950385876118?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113259950385876118/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113259950385876118' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259950385876118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259950385876118'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/09/wss-v3-sharepoint-en-force-pour-le.html' title='WSS V3, SharePoint en force pour le futur'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113087562672644293</id><published>2005-09-16T12:03:00.000-07:00</published><updated>2005-11-01T12:07:06.736-08:00</updated><title type='text'>Sécurité et Administration en ASP.NET V2</title><content type='html'>Plus facile on peut pas faire. Whidbey met à votre disposition une espace pour administrer votre site web. Dans une première partie l'auteur vous montre comment administrer rapidement votre site web en créeant des rôles, des users...&lt;br /&gt;Whidbey ne fait pas qu'administer vos users, il crée directement les tables dans votre base de données avec le fournisseur d'accés aux données que vous choisirez. Des classes et des procèdures stokés sont aussi créées pour gèrer rapidement votre site web. Mais ce n'est pas tout, vous aurez des Contrôles serveurs facile à utiliser pour gérer les authentificaitons, les mots de passes perdu, la création de nouveau users.&lt;br /&gt;Voir l'article : &lt;a class="postlink" href="http://www.laboratoire-microsoft.org/articles/dev/security_whidbey/" target="_blank"&gt;http://www.laboratoire-microsoft.org/articles/dev/security_whidbey/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113087562672644293?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113087562672644293/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113087562672644293' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087562672644293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087562672644293'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/09/scurit-et-administration-en-aspnet-v2.html' title='Sécurité et Administration en ASP.NET V2'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113259448771733889</id><published>2005-08-23T16:31:00.000-07:00</published><updated>2005-11-21T09:34:47.716-08:00</updated><title type='text'>Microsoft Office SharePoint Portal Server 2003 Discovery Kit</title><content type='html'>&lt;div align="center"&gt;Apres le &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=BCA45A99-E420-47FD-8AEA-A8743735C710&amp;displaylang=en"&gt;SharePoint Portal Server 2003 Training Kit&lt;/a&gt;, Microsoft vient de sortir le :&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=03607516-cbec-4724-b4a4-aa7f09304ba5&amp;amp;displaylang=en"&gt;&lt;strong&gt;Microsoft Office SharePoint Portal Server 2003 Discovery Kit&lt;/strong&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Tout ce qu'il vous faut pour découvrir en douceur et en profondeur l'offre portail de Ms, à travers 6 labs clé en main&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Une installation clé en main (d'un extreme clareté avec Windows, IIS, SQL, SPS, AD et reporting services via la VPC : un must !)&lt;/li&gt;&lt;li&gt;Personnalisation du moteur de recherche&lt;/li&gt;&lt;li&gt;Gestionnaire de personnalisation et audience&lt;/li&gt;&lt;li&gt;SSO et &lt;strong&gt;Reporting Services avec ses WebPart&lt;/strong&gt; : (un must aussi !!!) &lt;/li&gt;&lt;li&gt;Personnalisation et charte graphique&lt;/li&gt;&lt;li&gt;infrastructure et performance (gestion des pools et indexs)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Le seul défaut de ces labs est d'etre juste en anglais ...&lt;/p&gt;&lt;p&gt;Cheminement , best practices, captures d'ecran, vous ne pouvez vous tromper il suffit de suivre pas à pas le fil conduteur des labs.&lt;/p&gt;&lt;p&gt;Bref, ces sont d'une qualité redoutable, je ne saurais trop vous les conseiller pour bien débuter&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113259448771733889?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113259448771733889/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113259448771733889' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259448771733889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259448771733889'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/08/microsoft-office-sharepoint-portal.html' title='Microsoft Office SharePoint Portal Server 2003 Discovery Kit'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113087872714481340</id><published>2005-08-18T12:24:00.000-07:00</published><updated>2005-11-01T12:58:47.170-08:00</updated><title type='text'>ADO.NET: toutes les nouveautés de la version 2.0</title><content type='html'>&lt;strong&gt;Cette nouvelle mouture apporte de nombreuses améliorations. Elle vous imposera cependant peut-être de revoir votre code d’accès aux données. Tour d’horizon des principales évolutions.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Maintenant que les développeurs ont entre les mains la première version alpha publique de la prochaine mouture de Visual Studio .NET ("Whidbey"), il est temps qu'ils commencent à penser à leurs applications et à la manière dont elles pourraient être affectées par le passage à cette nouvelle version. Si la transition entre les versions 1.0 et 1.1 de l'environnement .NET Framework s'est déroulé en douceur et impliquait principalement la résolution de bugs, une amélioration des performances et l'intégration de technologies auparavant distinctes, telles qu'ODBC et Oracle .NET Data Providers, la version 2.0 change la donne pour ce qui est de l'accès aux données. Elle inclut en effet une multitude de nouvelles fonctionnalités, dont certaines peuvent vous amener à revoir complètement le mode d'accès et de manipulation des données dans vos applications.&lt;br /&gt;&lt;br /&gt;Dans cet article, je présenterai brièvement les nouvelles fonctionnalités d'ADO.NET qui sont, à mon sens, les plus importantes, et je vous expliquerai comment les exploiter dans vos implémentations&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Offrir une vue plus étendue des données&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;Avant d'explorer les fonctionnalités spécifiques d'ADO.NET 2.0, je commencerai par rappeler que l'un des objectifs de conception généraux de cette version était de favoriser un degré plus élevé d'interopérabilité entre les données accédées relationnellement, au format XML et en tant qu'objets personnalisés. Comme ces trois types de données constituent le "triangle d'or" pour représenter les données dans une application, ADO.NET 2.0 a été conçu pour permettre aux développeurs d'utiliser plus facilement le modèle adéquat au moment voulu dans et entre les applications.&lt;br /&gt;Par exemple, dans les applications conçues à l'aide d'une architecture orientée services (SOA), les données opérationnelles persistantes seront souvent manipulées de manière relationnelle. Les données qui représentent le processus et encapsulent les règles opérationnelles seront quant à elles manipulées en tant qu'objets, tandis que les données de message et de recherche qui doivent être sérialisées en vue de leur transfert seront gérées en tant que XML. Pour présenter les nouvelles fonctionnalités, je les ai séparées en deux grandes catégories : les nouvelles fonctionnalités qui favorisent cette vue plus étendue des données et les fonctionnalités qui améliorent ou étendent le paradigme relationnel.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Élargir l'environnement .NET&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Deux nouvelles fonctionnalités importantes vous permettent d'étendre votre aptitude à traiter les données. Examinons chacune d'elles.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;ObjectSpaces&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;Cette technologie a été exposée il y a plusieurs années à l'occasion de la conférence des développeurs Microsoft et sera désormais intégrée à Whidbey. En deux mots, ObjectSpaces offre une couche de mappage relationnel objet dans le namespace System.Data.ObjectSpaces, qui instancie et complète les objets personnalisés à partir d'une base de données relationnelle. Pour ce faire, cette technologie utilise les métadonnées XML stockées dans un fichier de mappage qui est transmis au constructeur de la classe ObjectSpace, qui mappe les objets relationnels avec les objets .NET et les types relationnels avec les types .NET.&lt;br /&gt;&lt;br /&gt;Ce modèle de programmation supporte les requêtes (ObjectQuery) et gère les jeux d'objets en mémoire (ObjectSet), l'accès aux flux d'objets (ObjectReader) et même le chargement lent d'objets pour améliorer les performances (ObjectList et ObjectHolder).&lt;br /&gt;&lt;br /&gt;Même si dans la version actuelle, ObjectSpaces ne fonctionne qu'avec SQL Server 2000 et SQL Server "Yukon" (la version de SQL Server plus ou moins synchronisée avec Whidbey), cette technologie sera étendue pour permettre à l'avenir l'accès à d'autres espaces de stockage des données relationnelles. La technologie ObjectSpaces est idéale lorsque vous voulez représenter vos données à l'aide d'un modèle de domaine et encapsuler la logique applicative en tant que méthodes dans vos objets personnalisés, car elle vous évite de devoir écrire le code nécessaire pour charger vos objets depuis un espace de stockage des données relationnelles et en assurer la persistance.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;SQLXML et XmlAdapter&lt;br /&gt;&lt;/strong&gt;&lt;/em&gt;Bien que le DataSet ADO.NET a toujours permis de charger les données en tant que XML et de sérialiser leur contenu en tant que code XML, la conversion entre les deux modes de représentation des données ne s'est jamais faite sans heurts. Par exemple, pour que le code XML puisse être chargé dans un DataSet, son schéma ne devait pas être trop complexe et il devait se mapper correctement dans les tables de données (DataTables) relationnelles du DataSet.&lt;br /&gt;&lt;br /&gt;Si le support du XML par le DataSet a été amélioré dans la version 2 pour permettre de charger du XML avec plusieurs schémas en ligne, de charger des schémas avec des noms d'élément répétés dans différents namespaces, ainsi que de charger et sérialiser directement depuis les objets DataTable, les données doivent encore être relationnelles par nature pour fonctionner avec le DataSet. Pour y parvenir, la version 2 inclut la classe System.Xml.XmlAdapter. Celle-ci est semblable aux classes DataAdapter, dans la mesure où elle constitue un lien entre une source de données et une représentation des données, mais elle est utilisée pour interroger et charger du XML à partir d'une vue XML dans un objet XPathDocument (appelé XPathDocument2 dans la version alpha, mais reprendra le nom XPathDocument dans la version finalisée).&lt;br /&gt;&lt;br /&gt;Les vues XML permettent de mapper les tables relationnelles (dans SQL Server uniquement) avec un schéma XML via des fichiers de mappages ; ces derniers constituent le composant fondamental de la technologie SQLXML 3.0, autrefois distincte du .NET Framework, mais désormais intégrée à ADO.NET 2 (y compris la possibilité de charger le XML en masse dans SQL Server) dans le namespace &lt;em&gt;System.Data.SqlXml&lt;/em&gt;. Grâce à cette approche, vous pouvez fournir un jeu de vues XML pour vos données SQL Server, interroger les données avec le langage &lt;em&gt;XQuery&lt;/em&gt;, à l'aide de la nouvelle classe &lt;em&gt;XQueryProcessor&lt;/em&gt; et de la méthode &lt;em&gt;Fill&lt;/em&gt; du &lt;em&gt;XmlAdapter&lt;/em&gt;, et manipuler les données à l'aide des classes &lt;em&gt;XPathDocument, XPathEditor, XPathNavigator et XPathChangeNavigator.&lt;br /&gt;&lt;/em&gt;&lt;br /&gt;Les modifications sont répercutées sur SQL Server en appelant la méthode Update du XmlAdapter, qui s'appuie sur la vue XML pour rédiger les instructions SQL à exécuter à l'aide d'un fichier de mappages. L'avantage de cette approche est que vous pouvez traiter vos données SQL Server de la même manière que les autres espaces de stockage des données XML et que vous pouvez tirer profit de la fidélité sans faille du XML lorsqu'il s'agit d'apporter des changements.&lt;br /&gt;&lt;br /&gt;Bien entendu, les vues XML se contentent de fournir le mappage des données vers et depuis SQL Server. Si vous n'utilisez pas SQL Server, vous pouvez toujours tirer profit des modifications substantielles apportées à &lt;em&gt;XPathDocument&lt;/em&gt; (qui supplantera la classe XmlDocument et la rendra obsolète) et à ses classes associées pour faciliter l'interrogation, la navigation et l'édition du code XML chargé à partir d'autres sources.&lt;br /&gt;&lt;br /&gt;Par exemple, vous pouvez utiliser une nouvelle classe &lt;em&gt;XmlFactory&lt;/em&gt; afin de créer un jeu associé de classes &lt;em&gt;XmlReader, XmlWriter et XPathNavigator&lt;/em&gt; pour un document XML. Ces classes supportent désormais la possibilité de lire et d'écrire des types .NET vers et depuis les documents XML. Bien entendu, les performances ont été améliorées pour lire et écrire avec &lt;em&gt;XmlTextReader&lt;/em&gt; et &lt;em&gt;XmlTextWriter&lt;/em&gt; ou utiliser &lt;em&gt;XSLT&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Étendre le paradigme relationnel&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;La seconde grande catégorie de fonctionnalités se rapporte aux modifications apportées dans ADO.NET v2.0 pour améliorer l'accès aux bases de données relationnelles. Je les ai organisées en modifications dont tous les développeurs peuvent tirer profit, quelle que soit la base de données sous-jacente sur laquelle vous écrivez et quelles que soient celles qui nécessiteront SQL Server 2000 ou la prochaine version de SQL Server, Yukon.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Fabrique de fournisseurs&lt;br /&gt;&lt;/strong&gt;Bien que la conception des fournisseurs de données de .NET repose sur un jeu commun d'interfaces et de classes de base, dans les versions 1.0 et 1.1, Microsoft n'avait pas fourni de classes de fabrique pour aider les développeurs à rédiger un code d'accès aux données polymorphes. Par conséquent, les développeurs ont dû se débrouiller par eux-mêmes.&lt;br /&gt;&lt;br /&gt;Dans la version 2, ADO.NET inclut des classes de fabrique héritées de &lt;em&gt;system.Data.Common.DbProviderFactory&lt;/em&gt; pour créer les classes standard de connexion, de commande, de lecteur de données, de table, de paramètres, de permissions et d'adaptateurs de données. Ces classes vous aident à écrire du code ciblant plusieurs bases de données. L'accès à une fabrique se fait à l'aide de la méthode &lt;em&gt;GetFactory&lt;/em&gt; de la classe &lt;em&gt;DbProviderFactories&lt;/em&gt;. Vous pouvez configurer une fabrique dans le fichier de configuration de l'application à l'aide de la classe &lt;em&gt;DbProviderConfigurationHandler&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Accès asynchrone aux données&lt;br /&gt;&lt;/strong&gt;Les commandes exécutées par ADO.NET dans la version 1.0 à l'aide des méthodes &lt;em&gt;ExecuteNonQuery&lt;/em&gt;, &lt;em&gt;ExecuteReader&lt;/em&gt; et &lt;em&gt;ExecuteXmlReader&lt;/em&gt; de &lt;em&gt;SqlCommand&lt;/em&gt; étaient synchrones et bloquaient le thread (tâche légère) en cours jusqu'à ce que le serveur ait renvoyé les résultats. Dans la version 2.0, chacune de ces méthodes inclut à la fois des versions Begin et End pour supporter l'exécution asynchrone du point de vue du client.&lt;br /&gt;&lt;br /&gt;Cette technique suit le modèle de programmation asynchrone courant à l'aide du délégué &lt;em&gt;AsyncCallback&lt;/em&gt; dans .NET et inclut donc la classe &lt;em&gt;SqlAsyncResult&lt;/em&gt; pour implémenter l'interface &lt;em&gt;IAsyncResult&lt;/em&gt;. Si cette fonctionnalité n'est pour l'instant opérationnelle que pour &lt;em&gt;SqlClient&lt;/em&gt;, il y a de grandes chances pour qu'elle soit étendue à d'autres fournisseurs avant la sortie.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Mises à jour par lots&lt;br /&gt;&lt;/strong&gt;Dans la version 1.0, un objet &lt;em&gt;DataAdapter&lt;/em&gt; envoyait toujours les modifications apportées aux lignes une par une au serveur. Dans la version 2.0, le &lt;em&gt;DataAdapter&lt;/em&gt; expose une propriété &lt;em&gt;UpdateBatchSize&lt;/em&gt; qui, si elle est prise en charge par le fournisseur de données, permet d'envoyer par lots les lignes modifiées au serveur. Cette procédure réduit le nombre d'allers-retours au serveur et améliore du même coup les performances.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Pagination des données&lt;/strong&gt;&lt;br /&gt;Dans &lt;strong&gt;SqlClient&lt;/strong&gt; et &lt;strong&gt;OracleClient&lt;/strong&gt;, l'objet Command expose désormais une méthode &lt;em&gt;ExecutePageReader&lt;/em&gt; qui vous permet de transmettre la ligne de départ et le nombre de lignes à renvoyer par le serveur. Cette fonctionnalité offre un accès aux données plus efficace en n'extrayant que les lignes que vous devez afficher. Toutefois, elle lit toutes les lignes contenues dans la table, si bien que les appels consécutifs peuvent contenir des lignes issues de la page précédente en raison d'insertions ou des dernières pages suite à des suppressions. Par conséquent, cette méthode est plus performante avec des données relativement statiques.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Accès distant binaire des DataSets&lt;br /&gt;&lt;/strong&gt;La version 2.0 permet désormais de sérialiser les DataSets à l'aide d'un format binaire lors de l'utilisation de l'accès distant .NET. Cette amélioration augmente les performances d'accès distant aux données entre les applications .NET, tout en réduisant le nombre d'octets transférés.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Transfert des objets DataSet et DataReader&lt;/strong&gt;&lt;br /&gt;Dans la version 1.1, vous ne pouviez charger un DataSet qu'à partir d'un objet &lt;em&gt;DataAdapter&lt;/em&gt;. Dans la version 2.0, vous pouvez également en charger un directement à l'aide d'un objet &lt;em&gt;DataReader&lt;/em&gt; et de la méthode &lt;em&gt;Load&lt;/em&gt;. À l'inverse, vous pouvez désormais générer une classe &lt;em&gt;DataTableReader&lt;/em&gt; (héritée de &lt;em&gt;DbDataReader&lt;/em&gt;) avec la méthode &lt;em&gt;GetDataReader&lt;/em&gt; afin de faire défiler le contenu d'un &lt;em&gt;DataSet&lt;/em&gt;. Cette fonctionnalité facilite le chargement d'un DataSet et la consultation de ses données.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;Yukon&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Cette catégorie rassemble les nouvelles fonctionnalités d'ADO.NET 2.0 qui se rapportent directement à la nouvelle version du code SQL Server nommé Yukon, attendu à la même époque.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;MARS&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;La fonctionnalité MARS (multiples jeux de résultats actifs) vous permet d'utiliser plusieurs jeux de résultats simultanément sur une même connexion à Yukon. Cela peut s'avérer utile si vous devez ouvrir une classe &lt;em&gt;SqlDataReader&lt;/em&gt; et, pendant le défilement, exécuter une commande sur une ligne donnée. MARS permet aux deux commandes de partager le même objet &lt;em&gt;SqlConnection&lt;/em&gt;, si bien qu'une seconde connexion à SQL Server devient superflue.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Notification des modifications&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;L'une des nouvelles fonctionnalités les plus intéressantes de Yukon est sa faculté à supporter les notifications. ADO.NET 2.0 inclut le support par programmation de cette fonctionnalité en incluant un objet &lt;em&gt;SqlNotificationRequest&lt;/em&gt; qui peut être lié à une commande &lt;em&gt;SqlCommand&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Lorsque les données renvoyées par la commande changent dans la base de données, un message est envoyé dans la file d'attente de notification spécifiée. Le code ADO.NET peut alors interroger la file d'attente, soit en utilisant une requête asynchrone qui bloque jusqu'à l'envoi d'un message, soit en vérifiant régulièrement la file d'attente avec la nouvelle syntaxe Transact-SQL.&lt;br /&gt;&lt;br /&gt;Pour faciliter davantage encore l'utilisation de cette fonctionnalité, une classe SqlDependency qui paramètre un délégué asynchrone est incluse. Elle sera appelée lors d'une modification des données et peut être utilisée conjointement avec le moteur de mise en mémoire cache ASP.NET, à l'instar des autres dépendances.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Types Yukon&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;ADO.NET 2.0 supporte le jeu complet de types de données Yukon, notamment XML et les types définis par l'utilisateur (UDT). Cela signifie que les colonnes dans Yukon définies en tant que XML peuvent être extraites en tant qu'objets XmlReader et que les UDT peuvent être transmis aux procédures stockées et renvoyés par les requêtes en tant que types .NET standard. Vos applications peuvent ainsi exploiter les données en tant qu'objets entièrement formés, tout en interagissant avec la base de données utilisant les objets. Cette fonctionnalité peut être mise à profit lors de la rédaction de code géré s'exécutant en cours de processus dans SQL Server, ce qui permet à la fois à la procédure stockée gérée et au code client d'utiliser le même type .NET.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Curseurs côté serveur&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Comme ils ont souvent entraîné une dégradation des performances des applications, les curseurs côté serveur des versions 1.0 et 1.1 d'ADO.NET ont été abandonnés dans ADO 2.x. Mais ADO.NET 2.0 réintroduit le concept dans Yukon à l'aide des méthodes &lt;em&gt;ExecuteResultset&lt;/em&gt; et &lt;em&gt;ExecuteRow&lt;/em&gt; de l'objet SqlCommand et de la classe &lt;em&gt;SqlResultset&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;La classe &lt;em&gt;SqlResultset&lt;/em&gt; offre un curseur flottant et actualisable qui peut être utile pour les applications qui doivent consulter une grande quantité de données mais ne mettre à jour que quelques lignes. Bien que cette fonctionnalité puisse être utilisée à partir d'applications clientes telles qu'ASP.NET, elle est principalement destinée à être utilisée lors de l'écriture de code géré s'exécutant en cours de processus avec Yukon sous la forme de procédures stockées.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Copie en masse&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Bien qu'il ne s'agisse pas d'une particularité Yukon, ADO.NET 2.0 permet à présent d'accéder par programmation au programme BCP ou API de copie en masse exposée par SQL Server. Pour ce faire, il faut utiliser les classes &lt;em&gt;SqlBulkCopyOperation&lt;/em&gt; et &lt;em&gt;SqlBulkCopyColumnAssociator&lt;/em&gt; du namespace &lt;em&gt;System.Data.SqlClient&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Et ce n'est qu'un début... Mes descriptions des nouvelles fonctionnalités d'ADO.NET 2.0 sont basées sur ce que j'ai pu voir dans la version alpha. Bien entendu, les choses sont susceptibles d'évoluer d'ici la première version bêta, prévue au printemps.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113087872714481340?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113087872714481340/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113087872714481340' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087872714481340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113087872714481340'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/08/adonet-toutes-les-nouveauts-de-la.html' title='ADO.NET: toutes les nouveautés de la version 2.0'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113259373627633120</id><published>2005-07-26T11:13:00.000-07:00</published><updated>2005-11-21T09:22:16.280-08:00</updated><title type='text'>SharePoint (SPS 2003/WSS) : Si on parlait de la Version 3 ...</title><content type='html'>&lt;p&gt;La release de VS 2005 arrive, SQL Server 2005 aussi et à petit pas&lt;br /&gt;Et de la, le futur de SharePoint Technologies commence lui aussi à se dessiner&lt;br /&gt;Mais tout doucement.&lt;/p&gt;&lt;p&gt;&lt;a href="http://blogs.msdn.com/mikefitz/"&gt;Mike Fitzmaurice &lt;/a&gt;(WSS/SPS Senior developer evangelism) vient de confirmer certains points et léve le voile sur d'autre.&lt;/p&gt;&lt;p&gt;Des lors, que pouvons nous attendre de SharePoint ???&lt;br /&gt;Mais avant parlons déja de la version actuelle !!! Et oui SPS 2003 / WSS n'est pas encore remplacé.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Il est largement déconseillé (et non supporté) d'installer conjointement Whidbey et WSS/SPS, et je ne parle pas de Yukon&gt;&gt;&gt; Préféré un scenario de test avec une machine Virtuel style VPC/VMWARE. Même Si aprés quelques paramétrages, les 2 peuvent plus ou moins coexister, il n'en reste pas moins que la stabilité d'une telle configuration tient plus d'une bouteille de nitroglycerine qu'autre chose... &lt;/li&gt;&lt;li&gt;Si la notion de User Control dans SharePoint vous interesse (à la maniére des GenericsControls &amp; les WebParts de VS 2005), jettez donc un oeil sur la &lt;a href="http://blogs.developpeur.org/themit/archive/2005/03/06/5001.aspx"&gt;SmartPart&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Maintenant, projettons nous un peu plus loin dans le futur&lt;/li&gt;&lt;/ol&gt;&lt;p&gt; &lt;/p&gt;&lt;ol&gt;&lt;li&gt;Comme déja dit, le CAML est la pour encore qque temps. Bien, trés bien mais il ne semble pas que Ms aille sortir un CAML Viewer/Editor pour VS 2005&gt;&gt;&gt; Bref, XmlSpy/Cooktop et d'autre editeur XML ont encore de beau jour &lt;a title="" href="http://blogs.developpeur.org/themit/archive/2005/03/20/5279.aspx#"&gt;&lt;/a&gt;&gt;&gt;&gt; C'est aussi un axe intéréssant pour un editeur de plugin&lt;/li&gt;&lt;li&gt;SharePoint V3 sera basé sur ASP.NET 2.0 et son framework de WebPart&gt;&gt;&gt; Que dire de plus, je ne vois pas... (mais pas d'information sur la notion de master template ....)  &lt;/li&gt;&lt;li&gt;Les WebParts de la V3 ne fonctionneront que sur des sites sous technologie SharePoint V3. Un site ASP.NET 2.0 ne pourra donc les utiliser ...  &lt;/li&gt;&lt;li&gt;Il y aura une totale compatibilité entre les WebParts actuelles et les WebParts de la V3&gt;&gt;&gt; Rien n'empêche donc d'attendre, vous pouvez commencer à coder vos composant dés maintenant !&lt;/li&gt;&lt;li&gt;Attention, .Net sera prépondérant sur la V3 mais la notion de IFilter et de Protocol Handler restera en C++  &lt;/li&gt;&lt;li&gt;La V3 ne sera pas sorti cette année même si Whidbey vas arriver&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Plein de bonne chose n'est ce pas ? Masi ce n'est pas tout !&lt;br /&gt;Parlons un peu du service Pack 2 de SPS 2003/ WSS :&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Ce SP permettra de faire fonctionner conjointement ASP.NET 2.0 ET SPS 2003/WSS  &lt;/li&gt;&lt;li&gt;la liste des fonctionnalités de ce SP n'est pas encore publique et donc rien n'est garantie si ce n'est le fonctionnement conjoint&lt;/li&gt;&lt;/ol&gt;Il est souvent question d'utiliser les WP de whidBey dans WSS SP2.&lt;br /&gt;C'est actuellement en cours de travail chez les équipes de MS :&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;span style="color:#cc0000;"&gt;Il ne faut donc pas, pour autant, être sur que ce sera une fonctionnalité du SP2&lt;/span&gt;&lt;br /&gt;(Disons plutot une bonne surprise si jamais, croisons les doigt)&lt;/div&gt;&lt;br /&gt;Dixit &lt;a href="http://blogs.msdn.com/mikefitz/archive/2005/03/17/397775.aspx"&gt;Mike Fitzmaurice&lt;/a&gt;:"But don’t plan to use them (Whidbey WP) in SharePoint sites for a year.  Believe me, no one will be happier than me when we can tell everyone to write all Web Parts in ASP.NET 2.0, and if we can tell you this before next year, we will."&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Donc en résumé :&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Plein de bonne chose pour l'avenir avec ASP.NET 2.0 &lt;/li&gt;&lt;li&gt;Preparez vous en testant les WP de Whidbey : voici &lt;a href="http://msdn.microsoft.com/asp.net/whidbey/default.aspx?pull=/library/en-us/dnvs05/html/webparts.asp"&gt;un bon article&lt;/a&gt; &lt;/li&gt;&lt;li&gt;Evitez de tout installer sur la même machine. &lt;/li&gt;&lt;li&gt;Continuez à écrire des WP ! (en attendant l'année prochaine voir plus)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113259373627633120?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113259373627633120/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113259373627633120' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259373627633120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259373627633120'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/07/sharepoint-sps-2003wss-si-on-parlait.html' title='SharePoint (SPS 2003/WSS) : Si on parlait de la Version 3 ...'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113089447925256070</id><published>2005-07-14T16:56:00.000-07:00</published><updated>2005-11-01T17:21:19.266-08:00</updated><title type='text'>Innovations du langage C# 2.0</title><content type='html'>Attaquons les innovations d’un premier langage : « C# », entendez C Sharp. Nous aborderons les Générics, les classes partielles, les méthodes anonymes, les itérateurs, les qualifications d'alias et des classes statiques, ... Les explications se voudront relativement simples en vue de permettre une compréhension rapide de ces avancées.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. Générics&lt;br /&gt;&lt;/strong&gt;Présenté comme étant une des caractéristiques prépondérantes, soutenue par Bill Gates, du C# 2.0, les Générics apportent la capacité de réutilisation générique des algorithmes. Couramment utilisé en C++ comme Template, l’absence des Générics sous C# fut un reproche des utilisateurs auprès de Microsoft. Avant l’apparition des génériques, nous aurions écrit le code suivant :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;public class List&lt;br /&gt;{&lt;br /&gt;private object[] elements;&lt;br /&gt;private int count;&lt;br /&gt;public void Add(object element) {&lt;br /&gt;if (count == elements.Length) Resize(count * 2);&lt;br /&gt;elements[count++] = element;&lt;br /&gt;}&lt;br /&gt;public object this[int index] {&lt;br /&gt;get { return elements[index]; }&lt;br /&gt;set { elements[index] = value; }&lt;br /&gt;}&lt;br /&gt;public int Count {&lt;br /&gt;get { return count; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;En l’exploitant de la manière suivante : List intList = new List();&lt;br /&gt;intList.Add(1); // Boxing&lt;br /&gt;intList.Add(2); // Boxing&lt;br /&gt;intList.Add("Three"); // Génère une erreur à l’exploitation du code&lt;br /&gt;int i = (int)intList[0]; // Le Cast est nécessaire&lt;br /&gt;Cette méthodologie, bien que fonctionnelle, soulève quelques problématiques : le transtypage explicite nécessaire, la diminution des performances de ce code lors de l’étape implicite de boxing et unboxing des éléments, la possibilité d’empiler des éléments de types différents pouvant engendrer des problématiques de transtypages uniquement décelables lors de l'exécution du code, nous parlerons dans ce cas de code non Type-Safe. L’entrée des Générics permet d’écrire le code suivant : public class List&lt;br /&gt;{&lt;br /&gt;private T[] elements;&lt;br /&gt;private int count;&lt;br /&gt;public void Add(T element) {&lt;br /&gt;if (count == elements.Length) Resize(count * 2);&lt;br /&gt;elements[count++] = element;&lt;br /&gt;}&lt;br /&gt;public T this[int index] {&lt;br /&gt;get { return elements[index]; }&lt;br /&gt;set { elements[index] = value; }&lt;br /&gt;}&lt;br /&gt;public int Count {&lt;br /&gt;get { return count; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;Et une exploitation : List intList = new List();&lt;br /&gt;intList.Add(1); // Pas de boxing&lt;br /&gt;intList.Add(2); // Pas de boxing&lt;br /&gt;intList.Add("Three"); // Erreur levee lors de la compilation&lt;br /&gt;int i = intList[0]; // Aucun Cast nécessaire&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Cette nouveauté permet ainsi d’éviter les problématiques mentionnées sans utilisation des Générics. Nous avons ainsi un code performant, Type-Safe n'engendrant aucune opération de boxing/unboxing sans transtypage des éléments.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2. Classes partielles&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;Les classes partielles représentent une nouveauté intéressante et plus particulièrement dans le cadre du travail collaboratif. L’approche est simple, à l’avenir les classes pourront être écrites sur plusieurs fichiers grâce à la syntaxe " public partial class …"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;Exemple : // ClassPart1.cs&lt;br /&gt;using System;&lt;br /&gt;public partial class ClassPart&lt;br /&gt;{&lt;br /&gt;public void Methode()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;// ClassPart2.cs&lt;br /&gt;using System;&lt;br /&gt;public partial class ClassPart&lt;br /&gt;{&lt;br /&gt;public void AutreMethode()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Une nuance à ce titre entre VB.NET et C#, VB.NET tolère une classe déclarée en «Public Class».&lt;br /&gt;&lt;br /&gt;&lt;strong&gt; 3. Méthodes anonymes&lt;br /&gt;&lt;/strong&gt;Les méthodes anonymes permettent d'instancier une méthode sans la nommer. Contrairement aux Générics, cette nouveauté n'engendre aucune nouvelle implémentation au sein de l’IL (Intermediate Language) mais se situe au niveau du compilateur.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;button.Click += delegate { MessageBox.Show("HelloWorld"); };&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;L’exemple suivant montre une méthode anonyme avec des arguments.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;button.Click += delegate(object sender, EventArgs e) {&lt;br /&gt;MessageBox.Show(((Button)sender).Text);&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt; 4. Itérateurs&lt;/strong&gt;&lt;br /&gt;Les itérateurs peuvent être considérés comme étant la contre partie logique C# 2.0 du foreach sous C#. Les itérateurs simplifient le processus d'itération de collection.&lt;br /&gt;&lt;br /&gt;En C#, il est relativement simple de itérer des collections finies d’éléments en utilisant le mot clé « foreach ». Ceci nécessite l’implémentation des interfaces IEnumerable et IEnumerator.&lt;br /&gt;&lt;br /&gt;L’objectif premier des itérateurs est d'alléger le travail d'écriture des zones fixes de code et de rendre plus simple l'exposition de collection énumérables.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#6666cc;"&gt;class List: IEnumerable&lt;br /&gt;{&lt;br /&gt;   private T[] elements;&lt;br /&gt;   public IEnumerator GetEnumerator()&lt;br /&gt;   {&lt;br /&gt;       foreach (T element in elements)&lt;br /&gt;       {&lt;br /&gt;           yield element;&lt;br /&gt;       }&lt;br /&gt;    }&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Nous n’oublierons pas d’implémenter « System.Collections.Generic » afin d’exploiter la version Generic de IEnumerator : « using System.Collections.Generic; »&lt;br /&gt;&lt;br /&gt;Vous aurez aussi remarqué l’utilisation d’un nouveau mot clé « yield » qui est utilisé dans notre méthode comme retour de IEnumerator, IEnumerable ou tout autre Generic équivalent. Tout comme les méthodes anonymes, les itérateurs gèrent des arguments. &lt;/p&gt;&lt;strong&gt;5. Qualificateur global d’espace de nom&lt;br /&gt;&lt;/strong&gt;L’accès à un membre dans l’espace de nom global s’avère être utile quand le membre pourrait être caché par une autre entité du même nom.&lt;br /&gt;&lt;br /&gt;Le qualificateur global d’espace de nom résout ce problème par l’introduction de l'opérateur ": :" qui peut être employé comme espace de nom ou type préfixe nommé.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;namespace Acme&lt;br /&gt;{&lt;br /&gt;   namespace System&lt;br /&gt;    {&lt;br /&gt;       class Example&lt;br /&gt;         {&lt;br /&gt;            static void Main()&lt;br /&gt;              {&lt;br /&gt;                   ::System.Console.WriteLine("Hello");&lt;br /&gt;               }&lt;br /&gt;          }&lt;br /&gt;    }&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;6. Classes Statiques&lt;/strong&gt;&lt;br /&gt;Les classes statiques prévoient de remplacer les design patterns de création de classes de type « sealed » avec un constructeur "private" contenant uniquement des méthodes statiques.&lt;br /&gt;Le code suivant :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;public sealed class Environment     &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;     // Keep class from being created&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;      private Environment() { }   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;&lt;/span&gt;&lt;br /&gt;Devient :&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;    public static sealed class Environment    &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;&lt;/span&gt;&lt;br /&gt;L'avantage d'employer une classe statique au lieu du modèle de conception ci-dessus est que le compilateur peut maintenant rapporter une erreur si des instances de méthodes sont accidentellement déclarées&lt;br /&gt;&lt;br /&gt;&lt;strong&gt; 7. Types Nullables&lt;br /&gt;&lt;/strong&gt;Si vous n’aviez jamais imaginé assigner des valeurs nulles à vos types « valeur », détrompez-vous ! Vous pouvez désormais assigner des valeurs nulles à des types valeur en définissant un type nullable. Ceci en ajoutant un point d'interrogation "?" immédiatement à droite du type lors de la définition de votre variable. Les types nullables dérivent du type générique System.Nullable. T étant votre type. Deux propriétés étendent l'utilité des types nullables : "HasValue" et "Value". HasValue évalue le caractère « nulle » de votre type tandis que Value retournera la valeur fondamentale que celle-ci soit nulle ou non.&lt;strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;span style="font-size:85%;color:#6666cc;"&gt;//les deux déclarations suivantes se réfère au même type nullable d'interger&lt;br /&gt;int? myInt1 = null; Nullable myInt2 = null;&lt;br /&gt;if (myInt1 == null)  Console.WriteLine("myInt1 is null."); if (myInt2 == null)  Console.WriteLine("myInt2 is null.");&lt;br /&gt;// Nous pouvons examiner le type valeur pour nous assurer d’obtenir une valeur de cette manière&lt;br /&gt;myInt1 = 1; if (myInt1.HasValue)  Console.WriteLine("myInt1 has a value = {0}", myInt1.Value); else  Console.WriteLine("myInt1 is null.");&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113089447925256070?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113089447925256070/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113089447925256070' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089447925256070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089447925256070'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/07/innovations-du-langage-c-20.html' title='Innovations du langage C# 2.0'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113259157692334831</id><published>2005-06-25T00:43:00.000-07:00</published><updated>2005-11-21T08:46:16.936-08:00</updated><title type='text'>Windows SharePoint Services, Service Pack 2 : quoi de neuf ?</title><content type='html'>&lt;p&gt;L'annonce est passé à travers pas mal de blog, j'en ai brièvement parlé lors de mon dernier &lt;a href="http://blogs.developpeur.org/orion/archive/2005/09/28/11768.aspx"&gt;post&lt;/a&gt;, le Service Pack 2 de Windows SharePoint Services est bel et bien disponible.&lt;br /&gt;Les nouveautés que j'ai retenues :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Support d'ASP.NET 2.0 &lt;/li&gt;&lt;li&gt;Support de SQL Server 2005 &lt;/li&gt;&lt;li&gt;Support de Windows Server 2003 64 bits &lt;/li&gt;&lt;li&gt;Support du "reverse proxy" (modification des hosts headers) &lt;/li&gt;&lt;li&gt;Support de l'IP Bound&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Une description du SP2 de WSS est disponible sur le site de Microsoft, &lt;a href="http://support.microsoft.com/?id=887624"&gt;http://support.microsoft.com/?id=887624&lt;/a&gt;.&lt;br /&gt;Je vous renvoie également vers ce lien, &lt;a href="http://support.microsoft.com/?id=894903"&gt;http://support.microsoft.com/?id=894903&lt;/a&gt; car j'ai eu des petits problèmes de conflits entre les différentes versions d'ASP.NET installé sur mon portable.&lt;br /&gt;Et pour finir, une liste des problèmes résolus par ce Service Pack : &lt;a href="http://support.microsoft.com/?id=906336"&gt;http://support.microsoft.com/?id=906336&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113259157692334831?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113259157692334831/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113259157692334831' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259157692334831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259157692334831'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/06/windows-sharepoint-services-service.html' title='Windows SharePoint Services, Service Pack 2 : quoi de neuf ?'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113085581206535983</id><published>2005-06-22T10:33:00.000-07:00</published><updated>2005-11-01T06:37:50.026-08:00</updated><title type='text'>Atelier : Utilisation  des outils de design Visual studio 2005  pour la modélisation des applications orientées services (SOA).</title><content type='html'>Pour ceux qui veulent passer à l’action, voici l’atelier qui a été proposé à l’événement NDC2005.&lt;br /&gt;Cet atelier va vous permettre d’étudier la manière d’utiliser Visual Studio 2005 pour modéliser des applications SOA.&lt;br /&gt;&lt;br /&gt;Contenu de l’atelier :&lt;br /&gt;1. Modélisation de la structure d’Application : Création de la structure de l’application&lt;br /&gt;2. Validation de la structure de l’application : Création de Datacenter logique&lt;br /&gt;&lt;br /&gt;Télécharger l’atelier ici : &lt;a href="http://www.dotnet-maroc.com/docs/labsoa.zip"&gt;http://www.dotnet-maroc.com/docs/labsoa.zip&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113085581206535983?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113085581206535983/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113085581206535983' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113085581206535983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113085581206535983'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/06/atelier-utilisation-des-outils-de.html' title='Atelier : Utilisation  des outils de design Visual studio 2005  pour la modélisation des applications orientées services (SOA).'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113085346721504177</id><published>2005-06-17T05:50:00.000-07:00</published><updated>2005-11-01T05:57:47.226-08:00</updated><title type='text'>SOA pour architecture orientée services.</title><content type='html'>Le point sur une méthode d'intégration dont l'appellation barbare cache une réalité qui l'est beaucoup moins. Décryptage d'une approche liée à XML, aux Web Services et au "couplage lâche".&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#9999ff;"&gt;&lt;strong&gt;Comment définir une architecture orientée services ?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;Lancée par le Gartner, la notion de SOA (pour architecture orientée services) définie un modèle d'interaction applicative mettant en oeuvre des connexions en couplage lâche entre divers composants logiciels (ou agents). Ici, on entend par "service" une action exécutée par un composant "fournisseur" à l'attention d'un composant "consommateur", basé éventuellement sur un autre système.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#9999ff;"&gt;&lt;strong&gt;Quels sont ses éléments constitutifs ?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;La mise en oeuvre de connexions en couplage lâche implique l'utilisation d'interfaces d'invocation et de vocabulaires de description de données qui soient communs à l'ensemble des agents, à la fois côté fournisseurs et côté consommateurs. Plus ces éléments seront avancés, en termes de schémas de structuration d'informations et de fonctions de requêtage, plus les services délivrés pourront supporter de possibilités de traitement différentes et plus leur marge d'évolution sera importante.&lt;br /&gt;Une fois généralisée à l'ensemble du système d'information, ce dispositif de communication universelle permet en principe de réutiliser et de combiner à loisir les applicatifs métier, au sein de processus par exemple. Et ceci de façon très réactive. C'est d'ailleurs le principal apport que le Gartner perçoit dans ses analyses. Selon l'institut, le SOA contribuera à accélérer la capacité des entreprises à s'adapter à un nouveau contexte de marché.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#9999ff;"&gt;&lt;strong&gt;Quelle différence entre une architecture orientée objet et une SOA ?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;Au sein d'une architecture orientée objets, les données manipulées sont directement associées au mode de traitement qui leur est appliqué (cf. les méthodes et les classes du langage Java). Ce n'est pas le cas au sein d'une architecture de SOA dans laquelle ces deux éléments sont dissociés. Le terme de "service" vient d'ailleurs de cette caractéristique. Par définition, un service a en effet pour but de proposer un résultat particulier, en fonction d'informations qui lui sont envoyées par un tiers. Ce dernier pouvant d'ailleurs très bien décider de transmettre parallèlement ces données à un service complémentaire ou même concurrent qui les prendrait en charge de la même façon.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#9999ff;"&gt;&lt;strong&gt;A quelles technologies d'adosse une architecture de type SOA ?&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;Apparues assez récemment sous l'impulsion de plusieurs grands éditeurs (dont Microsoft, IBM et Sun), les interfaces XML de type Web Services reposent une bibliothèque de standards conçus précisément pour construire une architecture orientée services. Les uns couvrant les questions d'invocation de composants (WSDL, etc.), les autres les problématiques liées au transport et à la description des informations transmises (SOAP, etc.).&lt;br /&gt;Force est de constater que des technologies plus anciennes (nées à la fin des années 1990) poursuivaient les mêmes objectifs. Les plus connues d'entre-elles sont Corba et DCOM. Ces alternatives qui peuvent se révéler intéressante pour certains projets n'en demeurent pas moins limitées : à la différence des Web Services, elles restent cantonnées à des environnements d'exécution bien particuliers - les serveurs d'applications J2EE pour Corba et les systèmes Microsoft dans le cas des composants DCOM.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#9999ff;"&gt;Quel lien entre SOA et bus de services d'entreprise (ESB) ?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Alors que les SOA font avant tout référence à un concept d'architecture, les bus de services d'entreprise désignent les plates-formes d'intégration du marché mettant en application cette notion. Schématiquement, ces produits sont conçus pour administrer et orchestrer des liens entre services applicatifs, pourquoi pas au sein de processus métier. Bref, il ne s'agit ni plus ni moins que d'EAI dont les connecteurs s'appuient sur des Web Services.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;source : &lt;/span&gt;&lt;a href="http://solutions.journaldunet.com/"&gt;&lt;span style="font-size:85%;"&gt;http://solutions.journaldunet.com&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113085346721504177?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113085346721504177/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113085346721504177' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113085346721504177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113085346721504177'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/06/soa-pour-architecture-oriente-services.html' title='SOA pour architecture orientée services.'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113089596021595627</id><published>2005-06-09T17:36:00.000-07:00</published><updated>2005-11-01T17:46:00.216-08:00</updated><title type='text'>Master page dans ASP.NET 2.0</title><content type='html'>Dans la nouvelle version de ASP.NET, Microsoft va un pas plus loin dans la simplification du design de page. Déjà on voyait ce type d’approche dans des applications comme DotnetNuke ou ASP.Net community portal fonctionnant sous ASP.NET et on appelait cela des thèmes de sites.&lt;br /&gt;&lt;br /&gt;Maintenant cette approche de thèmes ou de skining est intégrée dans la logique de base du framework.&lt;br /&gt;&lt;br /&gt;Cette approche s’appelle dans la nouvelle version de ASP.NET des mater page.&lt;br /&gt;On design une master page et on laisse les places dynamiques avec des ContentPlaceHolder. Dans la version ASP.NET 1.1 on pouvait le faire avec des PlaceHolder. Toutefois dans la version 2.0 on introduit une nouvelle extension de mage .master qui contient le master page. Voici un exemple de master page :&lt;br /&gt;&lt;br /&gt;//Template.master&lt;br /&gt;&lt;%@ master language="C#" %&gt;&lt;br /&gt;&lt;script runat="server"&gt;&lt;/script&gt;&lt;br /&gt;&lt;html&gt;&lt;head runat="server"&gt;&lt;br /&gt;    &lt;title&gt;Ma page&lt;/title&gt;&lt;br /&gt;&lt;/head&gt;&lt;br /&gt;&lt;body&gt;&lt;br /&gt;    &lt;form runat="server"&gt;&lt;br /&gt;        &lt;table id="Table1" cellspacing="1" cellpadding="1" width="100%" border="1"&gt;&lt;br /&gt;           &lt;tr&gt;&lt;br /&gt;                &lt;td colspan="2"&gt;&lt;br /&gt;                    &lt;h1&gt;Ma compagnie&lt;/h1&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td&gt;Navigation&lt;/td&gt;&lt;br /&gt;                &lt;td&gt;&lt;br /&gt;                    &lt;asp:contentplaceholder&lt;br /&gt;                        id="ContentPlaceHolder1"&lt;br /&gt;                        runat="server"&gt;&lt;br /&gt;                    &lt;/asp:contentplaceholder&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;        &lt;/table&gt;&lt;br /&gt;    &lt;/form&gt;&lt;br /&gt;&lt;/body&gt;&lt;br /&gt;&lt;/html&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//Default.aspx&lt;br /&gt;&lt;%@ page language="C#" master="~/Template.master" %&gt;&lt;br /&gt;&lt;asp:content id="Content1"&lt;br /&gt;   contentplaceholderid="ContentPlaceHolder1"&lt;br /&gt;   runat="server"&gt;&lt;br /&gt;   Je mets mon contenu ici…&lt;br /&gt;&lt;/asp:content&gt;&lt;br /&gt;&lt;br /&gt;Le contenu est généré directement sur les pages aspx. En effet, sur la page default.aspx par exemple qui appelle le master, la page contient toutes les routines de génération de contenu dynamique ou statique.&lt;br /&gt;&lt;br /&gt;Il est possible de définir sa page template directement dans web.config comme suit :&lt;br /&gt;&lt;br /&gt;&lt;pages master="~/Template.master"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113089596021595627?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113089596021595627/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113089596021595627' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089596021595627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089596021595627'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/06/master-page-dans-aspnet-20.html' title='Master page dans ASP.NET 2.0'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113259734456273593</id><published>2005-06-06T18:47:00.000-07:00</published><updated>2005-11-21T10:22:24.580-08:00</updated><title type='text'>SPS 2003 : Implémentation du moteur de recherche</title><content type='html'>&lt;p&gt;Pour beaucoup (moi le premier), SPS 2003 est surtout considéré comme un produit portail. Simple, évolutif et assez puissant, il permet de mettre rapidement en ligne des portails de contenu de tous genre.&lt;br /&gt;&lt;br /&gt;Mais pour une autre partie (moi aussi mais encore plus convaincu ), c'est surtout une superbe boite à outil, un framework de site complet dédié à .Net :&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Modéle de site &lt;/li&gt;&lt;li&gt;Stockage documentaire &lt;/li&gt;&lt;li&gt;Gestionnaire de contenu &lt;/li&gt;&lt;li&gt;Profiling de contenu &lt;/li&gt;&lt;li&gt;Systéme d'alerte &lt;/li&gt;&lt;li&gt;Plateforme de Web service &lt;/li&gt;&lt;li&gt;SSO &lt;/li&gt;&lt;li&gt;... &lt;/li&gt;&lt;li&gt;ET Moteur de recherche&lt;/li&gt;&lt;/ul&gt;C'est surtout ce dernier point qui m'interesse aujourd'hui.&lt;br /&gt;Bien souvent, le volume de donnée d'un intranet ne permet plus une navigation assez fluide. Un bon moteur de recherche est souvent la solution&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; Mais je ne parle pas d'un moteur de recherche dédié au site, mais plus d'un aggrégateur capable d'indexer tout et n'importe quoi quelle que soit sa provenance (indexeur crawleur)&lt;br /&gt;&lt;br /&gt;Les données peuvent provenir d'un systéme tier, voir d'un fournisseur via HTTPS, ou encore d'un partage disque voir une boite de messagerie&lt;br /&gt;&lt;br /&gt;Si le moteur Search de SPS sait gérer tout cela, pourquoi ne pas l'exploiter, le "consommer" de facon externe pour l'implémenter comme une brique de votre application?&lt;br /&gt;&lt;br /&gt;Manque de documentation, de temps ? Pas de soucis , le MSDN vient a votre secours avec l'article suivant&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_SP2003_ta/html/Office_SharePointPortalServerSearchBox.asp"&gt;How to Customize Your Search Using SharePoint Portal Server 2003&lt;/a&gt; de &lt;a href="http://blog.u2u.info/DottextWeb/patrick/"&gt;Patrick Tisseghem&lt;/a&gt; &lt;a href="http://go.microsoft.com/fwlink/?LinkId=30859"&gt;U2U&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;J'insiste sur cette article car grand Fan de Site Server 3.0 à l'époque de NT4 + option pack, je mettais souvent en place des architecture de recherche sur des sites distants avec du contenu documentaire qu'il soit en BDD, Notes, filesystem, le tout lié à l'intranet métier&lt;br /&gt;&lt;br /&gt;Plus une recherche libre style google mais plus une recherche metier et orienté&lt;br /&gt;&lt;br /&gt;Voici un peu les possibilités&lt;br /&gt;&lt;br /&gt;&lt;p&gt;    1. Recherche par le modéle object SPS : &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Pour vos propres applications&lt;/li&gt;&lt;li&gt;Pour des WebParts métiers du styles : les 10 derniers documents word publiés &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;em&gt;using Microsoft.SharePoint.Portal;&lt;br /&gt;using Microsoft.SharePoint.Portal.Search;&lt;br /&gt;using Microsoft.SharePoint.Portal.Topology;&lt;br /&gt;TopologyManager topology = new TopologyManager();&lt;br /&gt;PortalSite portal = topology.PortalSites[new Uri("&lt;/em&gt;&lt;em&gt;http://limassol:83&lt;/em&gt;&lt;/span&gt;&lt;em&gt;&lt;span style="font-size:85%;"&gt;")];&lt;br /&gt;PortalContext context = PortalApplication.GetContext(portal);&lt;br /&gt;QueryProvider qp = new QueryProvider(context.SearchApplicationName);&lt;br /&gt;string queryTemplate = "SELECT \"DAV:href\",\"DAV:displayname\", " +   "\"urn:schemas.microsoft.com:fulltextqueryinfo:description\" " +   "FROM ( TABLE Portal_Content..Scope()" +   "UNION ALL TABLE Non_Portal_Content..Scope() ) " +   "WHERE CONTAINS('\""+   textBoxKeyword.Text.Replace("'","''").Replace("\"","\"\"")+"\"') ";&lt;br /&gt;DataSet ds = qp.Execute(queryTemplate);&lt;br /&gt;DataGrid1.DataSource = ds;&lt;br /&gt;DataGrid1.DataBind();&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;    2.&lt;strong&gt; Extension et utilisation des controles SPS de recherche&lt;br /&gt;&lt;/strong&gt;Pas le temps de mettre au point un frontal de recherche : utiliser directement les controles SPS dans votre propres appli et spécifier les !&lt;br /&gt;Leur comportement dépend de 4 propriétés simples :  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;QueryTemplateSelectPart&lt;/strong&gt; for the SELECT part of the template.   &lt;/li&gt;&lt;li&gt;&lt;strong&gt;QueryTemplateFromPart&lt;/strong&gt; for the FROM part of the template.   &lt;/li&gt;&lt;li&gt;&lt;strong&gt;QueryTemplateWherePart&lt;/strong&gt; for the WHERE part of the template.   &lt;/li&gt;&lt;li&gt;&lt;strong&gt;QueryTemplateOrderByPart&lt;/strong&gt; for the ORDER BY part of the template. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;    3. &lt;strong&gt;La recherche via WebService&lt;/strong&gt; : encore plus simple et plus utilisable&lt;br /&gt;Dans une appli locale ou distante voir comme un service multi site (pour l'entreprise, un moteur global pour toute les applis).&lt;br /&gt;Directement dans le pavé Office pour faciliter la rédaction de document.&lt;/p&gt;&lt;p&gt;En bref, un &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_SP2003_ta/html/Office_SharePointPortalServerSearchBox.asp"&gt;article indispensable &lt;/a&gt;à lire pour tout ceux qui veulent pousser encore un plus loin leurs applications existantes via l'utilisation, allez :) , l'intégration de modules SharePoint  !!!&lt;/p&gt;&lt;p&gt;Et pour ceux que seul le concept de recherche passionne mais qui n'ont pas de SharePoint (les mahleureux ...), il existe NLucene, la version.Net du projet Lucene en Java&lt;/p&gt;&lt;p&gt;Site : &lt;a href="http://sourceforge.net/projects/nlucene"&gt;http://sourceforge.net/projects/nlucene&lt;/a&gt;&lt;br /&gt;Exemple : &lt;a href="http://cephas.net/blog/2003/11/16/queryparser_in_nlucene.html"&gt;http://cephas.net/blog/2003/11/16/queryparser_in_nlucene.html&lt;/a&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113259734456273593?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113259734456273593/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113259734456273593' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259734456273593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113259734456273593'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/06/sps-2003-implmentation-du-moteur-de.html' title='SPS 2003 : Implémentation du moteur de recherche'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113261256164048688</id><published>2005-05-21T16:08:00.000-07:00</published><updated>2005-11-21T14:36:01.656-08:00</updated><title type='text'>Microsoft présente SharePointD2D.com, site Internet dédié à SharePoint Portal Server à l'attention des professionnels de l'informatique</title><content type='html'>Microsoft présente SharePointD2D.com, le site web dédié à Microsoft SharePoint Portal Server réalisé par MSD2D.com. Ce site, conçu à l'aide des technologies Microsoft .NET, propose aux professionnels un support technique dédié à SharePoint disponible 24 heures sur 24, des forums de discussions ainsi qu'un annuaire complet comprenant plus de 350 produits pour SharePoint dans plus de 56 catégories, y compris plusieurs marchés verticaux stratégiques.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2042/1768/1600/MSD2D_green.0.gif"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/2042/1768/320/MSD2D_green.0.gif" border="0" /&gt;&lt;/a&gt; Les développeurs accèderont également à du code et des conseils d'administration pour toute une gamme de projets, notamment pour le développement, le dimensionnement, et la configuration d'un serveur &lt;a class="n" href="http://www.microsoft.com/france/sharepoint/default.asp" target="_blank"&gt;SharePoint Portal Server&lt;/a&gt;. Le site proposera également une galerie de composants WebPart gratuits et une liste d'ouvrages susceptibles de faciliter la création de projets. Les actualités et annonces concernant SharePoint y seront régulièrement répertoriées.&lt;br /&gt;&lt;br /&gt;&lt;a class="n" href="http://www.msd2d.com/?section=Sharepoint" target="_blank"&gt;MSD2D.com&lt;/a&gt;   est aussi responsable du site &lt;a class="n" href="http://www.msd2d.com/Default.aspx?section=Exchange" target="_blank"&gt;ExchangeD2D.com&lt;/a&gt;   qui, comme SharePointD2D.com, offre des informations et des services dédiés au produit phare du site. "Nous constatons que les sites ExchangeD2D.com et SharePointD2D.com constituent un outil de choix pour fédérer une communauté autour d'un produit" a déclaré David Cragg, Président de MSD2D.com. "Les acteurs peuvent apporter ou prendre des informations et des ressources spécifiques aux produits, ou encore publier des articles ou des suggestions inspirés par leur propre expérience pour en faire profiter les autres."&lt;br /&gt;&lt;br /&gt;"Avec plus de 600 listes dans des catégories telles que les produits, les services et les possibilités de formation, ce site constitue une riche source d'informations sur toutes sortes de sujets liés à SharePoint dédiée aux développeurs, administrateurs et utilisateurs, déclare Jean-Paul GOMES, Chef de Produit pour Microsoft France".&lt;br /&gt;&lt;br /&gt;Les différentes rubriques et ressources mentionnées ci-dessous sont disponibles sur le site &lt;a class="n" href="http://www.msd2d.com/?section=Sharepoint" target="_blank"&gt;MSD2D.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113261256164048688?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113261256164048688/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113261256164048688' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261256164048688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261256164048688'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/05/microsoft-prsente-sharepointd2dcom.html' title='Microsoft présente SharePointD2D.com, site Internet dédié à SharePoint Portal Server à l&apos;attention des professionnels de l&apos;informatique'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113080366339347085</id><published>2005-05-18T16:04:00.000-07:00</published><updated>2005-11-01T06:46:01.390-08:00</updated><title type='text'>Microsoft Content Management Server 2002 pour la gestion de contenu</title><content type='html'>Pour chaque site ou portail, les enjeux du Contenu sont aujourd’hui plus élevés que jamais. Avec des marchés mondiaux, des marques mondiales et des structures géographiquement dispersées, la marge d'erreur s’amenuise. Pour compliquer le tout, les techniques de contenu actuelles impliquent fréquemment l’intervention de tiers : Administration, approbateurs et prestataires de services.&lt;br /&gt;&lt;br /&gt;La solution de gestion de contenu CMS 2002 apporte aux tiers une plate-forme adaptée à ces difficultés. CMS 2002 peut jouer un rôle essentiel dans chaque entreprise en réduisant le temps de mise en ligne de l’information grâce à une vitesse, une coordination et une cohérence accrues dans la création, gestion et l’administration du contenu.&lt;br /&gt;&lt;br /&gt;L’objectif de l’atelier (à télécharger à partir du lien ci-dessous) est de permettre aux développeurs de découvrir l’environnement de l’outil CMS 2002 (Content Mangement Server 2002). Ce guide les accompagnera étape par étape tout au long de la création, développement et administration du CMS 2002.&lt;br /&gt;&lt;br /&gt;Télécharger l'atelier : &lt;a href="http://www.dotnet-maroc.com/docs/MCMS_LAB1.zip"&gt;http://www.dotnet-maroc.com/docs/MCMS_LAB1.zip&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113080366339347085?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113080366339347085/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113080366339347085' title='1 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113080366339347085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113080366339347085'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/05/microsoft-content-management-server.html' title='Microsoft Content Management Server 2002 pour la gestion de contenu'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113089493223997212</id><published>2005-05-05T17:26:00.000-07:00</published><updated>2005-11-01T17:28:52.240-08:00</updated><title type='text'>Présentation des Web Services Enhancements 2.0</title><content type='html'>Le framework .Net fournit nativement de nombreuses classes permettant de développer des applications qui consomment et produisent des WebServices. Microsoft propose, avec les Web Service Enhancements, un add-on au framework .Net et à Visual Studio .Net. Il permet au développeur de construire des WebServices sécurisés basés sur les derniers standards et spécifications en vigueur. Les WSE 2.0 étendent les fonctionnalités de sécurité, de routage, et d’intégration de pièces jointes dans des messages SOAP de la version 1.0. Ils permettent aux développeurs de construire des applications basées sur les dernières spécifications publiées par Microsoft et différents acteurs de l’industrie (IBM, Verisign, SAP…) telles que WS-Security, WS-Policy, WS-SecurityPolicy, WS-Trust, WS-SecureConversation et WS-Addressing.&lt;br /&gt;&lt;br /&gt;Dans cet article, nous abordons l’architecture WSE, nous présentons quelles sont les nouveautés de ce nouveau modèle objet et sa mise en œuvre. Nous étudierons le niveau de compatibilité assuré par rapport à la version 1.0; enfin nous terminerons par quelques exemples de mise en œuvre de WS-Security.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://leduke.developpez.com/WebService/WSE20.pdf" target="_blank"&gt;Téléchargez l'article&lt;/a&gt; format PDF (8 pages)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113089493223997212?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113089493223997212/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113089493223997212' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089493223997212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113089493223997212'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/05/prsentation-des-web-services.html' title='Présentation des Web Services Enhancements 2.0'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-112993603061928228</id><published>2005-04-30T16:06:00.000-07:00</published><updated>2005-11-01T06:49:29.160-08:00</updated><title type='text'>Ma participation à l’événement North Africa Developer Conference 2005 Alger (NDC)</title><content type='html'>Pour ma première participation à l’événement NDC 2005, j’ai choisi le sujet de création d’intranet avec Microsoft Sharepoint Portal Server 2003.&lt;br /&gt;&lt;br /&gt;L’atelier proposé expliquait les étapes d’installation d’un serveur SPS 2003, et les étapes de création et personnalisation d’un portail. La partie personnalisation détail la manière de création des WebPart à savoir : la bibliothèque de document, liste de contact, liste événements, liste agenda, liste des tâches, ainsi que la configuration du moteur de recherche.&lt;br /&gt;&lt;br /&gt;La dernière rubrique de l’atelier concerne le déploiement d’un portail SPS 2003 sur un autre environnement.&lt;br /&gt;&lt;br /&gt;L’atelier est disponible sur lien suivant : &lt;a href="http://www.dotnet-maroc.com/docs/NDC2005LabSPS.zip"&gt;http://www.dotnet-maroc.com/docs/NDC2005LabSPS.zip&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-112993603061928228?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/112993603061928228/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=112993603061928228' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/112993603061928228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/112993603061928228'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/04/ma-participation-lvnement-north-africa.html' title='Ma participation à l’événement North Africa Developer Conference 2005 Alger (NDC)'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18144048.post-113261411107107370</id><published>2005-04-18T16:54:00.000-07:00</published><updated>2005-11-21T15:10:57.953-08:00</updated><title type='text'>Nouvelles fonctionnalités de MCMS 2002</title><content type='html'>Grâce à ses nombreuses améliorations, Microsoft Content Management Server (MCMS) 2002 peut intervenir sur la façon dont les utilisateurs effectuent leurs tâches dans les différents rôles. Ceci est particulièrement vrai pour les développeurs de site qui réalisent maintenant la plupart de leur travail en environnement Microsoft Visual Studio .NET. Cette section récapitule les nouvelles fonctionnalités de MCMS 2002 et décrit les améliorations apportées par rapport à MCMS 2001.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Prise en charge de .NET Framework et ASP.NET &lt;/li&gt;&lt;li&gt;Intégration avec Visual Studio .NET &lt;/li&gt;&lt;li&gt;Publication simplifiée pour les auteurs de site &lt;/li&gt;&lt;li&gt;Séparation accentuée des tâches de création et de gestion du site &lt;/li&gt;&lt;li&gt;Déploiement de sites amélioré &lt;/li&gt;&lt;li&gt;Exemple de site WoodgroveNet &lt;/li&gt;&lt;li&gt;Didacticiels développés pour chaque rôle &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Prise en charge de .NET Framework et ASP.NET&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;MCMS 2002 s'appuie sur les fonctionnalités de Microsoft .NET Framework pour offrir une interopérabilité standardisée sur toutes les plates-formes et tous les langages. MCMS dispose de la technologie .NET suivante : &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Publishing Application Programming Interface (API) basé sur .NET&lt;/strong&gt;. MCMS Publishing API est incorporé pour être utilisé en environnement .NET, de façon à pouvoir être facilement appelé à partir de n'importe quel langage Common Language Runtime (CLR). &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Modèle d'authentification amélioré&lt;/strong&gt;. MCMS 2002 peut utiliser le modèle d'authentification fourni par ASP.NET ; il inclut également une API pour les modèles d'authentification personnalisés. L'authentification de MCMS 2002 permet de mapper des comptes de connexion authentifiés à l'extérieur vers les comptes du service d'annuaire Microsoft Active Directory® et de personnaliser ainsi le code pour gérer les applications tiers. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Mise en cache et performances améliorées&lt;/strong&gt;. MCMS 2002 utilise les fonctions de mise en cache intégrées dans ASP.NET pour améliorer les performances du site Web. Si vous ajoutez une directive OutputCache dans votre fichier modèle ASPX, toutes les pages créées à partir de ce modèle seront alors mises en cache conformément aux règles de la directive. MCMS 2002 fournit de nouveaux paramètres VaryByCustom permettant de mettre en cache les pages en fonction des droits MCMS et du rôle de l'utilisateur qui visualise la page. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Modèle d'événement amélioré&lt;/strong&gt;. Via le modèle d'événement ASP.NET, MCMS 2002 fournit des classes d'événements qui facilitent l'extension du modèle de workflow pour MCMS. Vous pouvez, par exemple, ajouter des approbateurs au workflow ou intégrer une notification de réception de message, puis intégrer ces extensions dans MCMS Web Author et MCMS Authoring Connector. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Prise en charge multilingue améliorée&lt;/strong&gt;. Les développeurs peuvent maintenant utiliser les fonctionnalités de .NET Framework pour ajouter une prise en charge multiculturelle. Il leur suffit simplement de programmer l'application initiale pour pouvoir ensuite générer des versions localisées du site. Pour ajouter une nouvelle langue, vous devez traduire uniquement les ressources de la culture cible. MCMS 2002 offre un ensemble complet de fonctionnalités pour la publication de contenu multilingue sur des sites créés de façon dynamique. Les auteurs peuvent créer du contenu dans n'importe quelle langue répondant au standard Unicode. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Web Services&lt;/strong&gt;. Étant donné que MCMS 2002 s'intègre avec ASP.NET et .NET Framework et que MCMS Publishing API fournit un accès complet au contenu sous-jacent et à la structure d'un site Web MCMS, les développeurs peuvent alors créer des Web Services XML qui génèrent ou traitent des Web Services, généralement dans l'optique de partager le contenu avec leurs partenaires. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Prise en charge XML&lt;/strong&gt;. Étant donné que MCMS 2002 est créé par .NET Framework, MCMS 2002 offre une prise en charge pour le contenu XML. Grâce à un nouvel espace réservé XML, MCMS 2002 gère le contenu XML avec validation de la définition de schéma XML (XSD) et le langage de transformation XSLT. MCMS 2002 fournit également des interfaces pour l'importation, l'exportation et le stockage du contenu XML. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Intégration avec Visual Studio .NET&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;MCMS 2002 est directement intégré dans l'environnement de développement Microsoft Visual Studio® .NET. Grâce à cette intégration, les développeurs ont entre les mains un environnement puissant dans lequel ils peuvent créer et déboguer les modèles MCMS. Ces modèles ont été refactorisés de façon à ce que la fonctionnalité du modèle soit fournie par une combinaison d'informations stockées dans une base de données (Content Repository de MCMS) et sur le système de fichiers. Les avantages qui en découlent sont les suivants : &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Les développeurs peuvent créer des modèles via des projets Visual Studio .NET.&lt;/li&gt;&lt;li&gt;Les espaces réservés MCMS sont implémentés comme contrôles serveur ASP.NET (appelés contrôles d'espace réservé), et peuvent ainsi être ajoutés dans les modèles ; il suffit juste de les faire glisser dans les fichiers ASPX (ou fichiers modèles). Contrairement aux versions précédentes de MCMS, ce modèle simplifie la procédure de débogage et fournit un moyen direct d'étendre MCMS avec de nouveaux types d'espaces réservés. &lt;/li&gt;&lt;li&gt;Le code associé aux modèles MCMS, comme le code qui rend la navigation sur les sites Web possible, peut être écrit en langage Microsoft Visual Basic® .NET ou Microsoft Visual C#™ ; il est enregistré dans les fichiers ASPX (fichiers modèles) résidant dans le système de fichiers. En maintenant le code dans les fichiers, les développeurs peuvent utiliser des outils de contrôle de code source, tels que Microsoft Visual SourceSafe®, pour gérer le code dans des environnements multidéveloppeur. Les extensions d'interface utilisateur vers Visual Studio .NET simplifient considérablement le processus de développement des modèles pour les programmeurs. Leurs tâches de développement incluent la définition des propriétés personnalisées et des informations de configuration liées aux contrôles d'espaces réservés. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Publication simplifiée pour les auteurs de site&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;MCMS Authoring Connector est le nouvel outil autonome de MCMS 2002, avec lequel les auteurs de site peuvent publier, en toute simplicité, des documents Microsoft Word 2002 directement de Word sur un site Web. Un utilisateur avec des droits de création limités peut installer rapidement Authoring Connector sur plusieurs ordinateurs client. Authoring Connector peut même se substituer à Web Author, lorsque le contenu peut être créé dans un document Word ou lorsqu'il existe déjà au format Word.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Séparation accentuée des tâches de création et de gestion du site&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Dans MCMS 2002, vous pouvez utiliser Site Manager (précédemment Site Builder) pour les tâches administratives exclusivement. Les gestionnaires de site et les gestionnaires des chaînes utilisent Site Manager pour créer et gérer les chaînes et les galeries (conteneurs) sur le site Web MCMS, pour définir les rôles, droits et groupes de droits et pour contrôler le suivi des révisions. Les concepteurs de modèles (développeurs de site) et les gestionnaires de ressources peuvent également passer par Site Manager pour gérer les ressources et les galeries de ressources.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Remarque&lt;/strong&gt;   Avec MCMS 2002, les auteurs de site ne peuvent plus utiliser Site Manager pour leurs activités de création. Ils ont alors le choix entre Web Author et Authoring Connector.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Déploiement de sites amélioré&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;MCMS 2002 inclut une nouvelle API Site Deployment qui gère le déploiement incrémentiel. Grâce à cette API, les développeurs peuvent créer des scripts de déploiement de sites et ainsi déployer de façon incrémentielle les ressources gérées par MCMS. Les autres améliorations apportées au déploiement de sites dans MCMS 2002 sont les suivante : &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Performances accrues&lt;/li&gt;&lt;li&gt;Exportations simultanées&lt;/li&gt;&lt;li&gt;Possibilité de sauvegarder et de restaurer les groupes de droits et les listes d'utilisateurs &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;Exemple de site WoodgroveNet&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Le site unilingue externe WoodgroveNet basé sur .NET est intégré dans MCMS 2002 comme exemple de site. Vous pouvez utiliser WoodgroveNet uniquement comme exemple ou comme point de départ pour développer votre propre site.&lt;br /&gt;&lt;br /&gt;D'autres exemples de sites Woodgrove, illustrant chacun les différentes utilisations possibles de MCMS pour le développement d'une myriade de sites Web, sont également disponibles sur &lt;a href="http://www.microsoft.com/france/"&gt;www.microsoft.com/france/&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Didacticiels développés pour chaque rôle&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;MCMS 2002 propose des didacticiels pour chacune des quatre catégories majeures dans lesquelles les utilisateurs de MCMS peuvent être classés : développeurs de sites, administrateurs système, gestionnaires de site et auteurs de sites.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18144048-113261411107107370?l=jirinet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jirinet.blogspot.com/feeds/113261411107107370/comments/default' title='Publier les commentaires'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18144048&amp;postID=113261411107107370' title='0 commentaires'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261411107107370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18144048/posts/default/113261411107107370'/><link rel='alternate' type='text/html' href='http://jirinet.blogspot.com/2005/04/nouvelles-fonctionnalits-de-mcms-2002.html' title='Nouvelles fonctionnalités de MCMS 2002'/><author><name>Jiri Adil</name><uri>http://www.blogger.com/profile/05650613767977581076</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
