<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Labo .NET Blogs</title><link>http://blogs.labo-dotnet.com/MainFeed.aspx</link><description>Blogs du labo-dotnet</description><generator>.Text Version 0.95.2004.101</generator><item><title>Migration</title><link>http://blogs.labo-dotnet.com/erebuss/archive/2007/11/09/24192.aspx</link><pubDate>Fri, 09 Nov 2007 20:35:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/erebuss/archive/2007/11/09/24192.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/erebuss/comments/24192.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/erebuss/comments/commentRss/24192.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/erebuss/archive/2007/11/09/24192.aspx#comment</comments><slash:comments>2</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/erebuss/services/trackbacks/24192.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/erebuss/rss.aspx">Erebuss Blog</source><description>&lt;p&gt;Ce blog a été migré.&lt;/p&gt;
&lt;p&gt;Vous pouvez désormais me retrouver aux adresses : &lt;a href="http://www.erebuss.com"&gt;Erebuss.com &lt;/a&gt;ou &lt;a href="http://www.erebuss.net"&gt;Erebuss.net&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A très bientot&lt;/p&gt;
&lt;p&gt;Gaëtan&lt;/p&gt;
&lt;img src ="http://blogs.labo-dotnet.com/erebuss/aggbug/24192.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Erebuss</dc:creator></item><item><title>Ce blog déménage</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/07/22/18864.aspx</link><pubDate>Sun, 22 Jul 2007 20:06:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/07/22/18864.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/18864.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/18864.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/07/22/18864.aspx#comment</comments><slash:comments>29</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/18864.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Bonjour &amp;#224; tous,&lt;/P&gt;
&lt;P&gt;N'&amp;#233;tant maintenant plus &amp;#224; Supinfo, je d&amp;#233;m&amp;#233;nage mon blog.&lt;/P&gt;
&lt;P&gt;Vous pourrez trouver mainenant de mes nouvelles sur : &lt;A href="http://www.simonferquel.net/blog/Default.aspx"&gt;http://www.simonferquel.net/blog/Default.aspx&lt;/A&gt;. Mettez &amp;#224; jour vos lecteurs RSS!&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/18864.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Install Visual Studio Script# templates in Orcas</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/06/25/17884.aspx</link><pubDate>Mon, 25 Jun 2007 07:43:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/06/25/17884.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/17884.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/17884.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/06/25/17884.aspx#comment</comments><slash:comments>111</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/17884.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;The installation package of Script# contains both Script# librairies and compilers, and Visual Studio project and item templates. The problem is that the installer has been created to install these templates in Visual Studio 2005, so they do not appear in Orcas. But there is a workaround.&lt;/P&gt;
&lt;P&gt;Using a fabulous little tool (&lt;A href="http://legroom.net/software/uniextract"&gt;Universal Extractor&lt;/A&gt;), you can unpack the MSI. Then, you can copy the templates to your Orcas Template repository: (in this example we use the user template repository, which is very usefull when you are not an administrator)&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;[MSI folder]\VSCSharpProjTemplateFolder\Script# -&amp;gt; %USERPROFILE%\Documents\Visual Studio Codename Orcas\Templates\ProjectTemplates\Visual C#\Script#&lt;/LI&gt;
&lt;LI&gt;[MSI folder]\VSCSharpItemTemplateFolder\Script# -&amp;gt; %USERPROFILE%\Documents\Visual Studio Codename Orcas\Templates\ItemTemplates\Visual C#\Script#&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I do not use the other templates, but you should be able to find where to put them easily if needed.&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/17884.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Script# and ASP.NET Ajax: Support for WEB Services Video</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/06/08/17379.aspx</link><pubDate>Fri, 08 Jun 2007 10:50:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/06/08/17379.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/17379.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/17379.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/06/08/17379.aspx#comment</comments><slash:comments>15</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/17379.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;I just made a video presenting Script# with ASP.NET AJAX and my Visual Studio Add-in for Web Service support.&lt;/P&gt;
&lt;P&gt;You can see it here: &lt;A href="http://blogs.labo-dotnet.com/simon/videos/DemoSSWS_fr.wmv"&gt;http://blogs.labo-dotnet.com/simon/videos/DemoSSWS_fr.wmv&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;It is in french, and I don't know I will have time to make an english&amp;nbsp;traduction... So if you are intersted in doing this, please &lt;A href="mailto:simon.ferquel@supinfo.com"&gt;contact me&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;You can download the &lt;A href="http://blogs.labo-dotnet.com/simon/developments/Demo SSWSBase.zip"&gt;base solution &lt;/A&gt;(without Ajax), and the &lt;A href="http://blogs.labo-dotnet.com/simon/developments/Demo SSWSFinal.zip"&gt;end solution&lt;/A&gt;. In both cases you will need the Northwind DataBase (SQL Server or Access version), and you will have to&amp;nbsp;modify the connection string (and provider name if you use Access version) in the web.config file.&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/17379.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Script# and ASP.NET Ajax: Support for WEB Services [updated]</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/05/31/17227.aspx</link><pubDate>Thu, 31 May 2007 09:27:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/05/31/17227.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/17227.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/17227.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/05/31/17227.aspx#comment</comments><slash:comments>49</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/17227.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;As you can see with my previous article, I am a Script# enthusiast. But there are some limitations in the actual version. One of the most important examples is the lack of support for ASP.NET Ajax proxies for WEB Services. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;Indeed, ASP.NET Ajax generates JavaScript proxy classes allowing browser-side code to call ASP.NET WEB Services methods marked as [ScriptService] and [ScriptMethod].&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;As Script# does not allow to write code calling classes and methods that it does not know, we have to build Script# assemblies that contain stubs of the proxy classes generated by ASP.NET Ajax. In order to do that, we need to look at the JS code generated by ASP.NET Ajax and rewrite the declarations in C#. It is a very time-expensive process, so I decided to create a Visual Studio plug-in that do that automatically.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;It works using reflection on your WEB Application assembly, looking for [ScriptService]-marked WEB Services and [ScriptMethod]-marked methods, generating C# code and compiling it with Script#.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;You can download this add-in &lt;A href="http://blogs.labo-dotnet.com/simon/developments/SSWSSetup.msi"&gt;here&lt;/A&gt;, and its source code &lt;A href="http://blogs.labo-dotnet.com/simon/developments/SSWS.zip"&gt;here&lt;/A&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;To use it, build your WEB Application project, right click on it in Solution Explorer and click &amp;#8220;Generate Script# stubs for Web Services&amp;#8230;&amp;#8221; Chose a path to store the generated assembly, click OK, and that is done.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;PS: this add-in only works with WEB Application project template (not with Web site templates).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;[updated]:&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN lang=EN-US style="mso-ansi-language: EN-US"&gt;&lt;o:p&gt;I have just made a video presenting this: &lt;A href="http://blogs.labo-dotnet.com/simon/archive/2007/06/08/17379.aspx"&gt;http://blogs.labo-dotnet.com/simon/archive/2007/06/08/17379.aspx&lt;/A&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/17227.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Script# and ASP.NET AJAX article</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/05/29/17156.aspx</link><pubDate>Tue, 29 May 2007 08:31:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/05/29/17156.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/17156.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/17156.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/05/29/17156.aspx#comment</comments><slash:comments>54</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/17156.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;I have not been posting for a long time, and sorry for every MyExpos&amp;#233; users, I am not releasing a new version of it (as I am very busy at this moment, and I will be also the next few months). &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.nikhilk.net/"&gt;Nikhil Kothari&lt;/A&gt; has recently published a new version of &lt;A href="http://projects.nikhilk.net/Projects/ScriptSharp.aspx"&gt;Script#&lt;/A&gt; (a tool that works like &lt;A href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/A&gt; that generates JavaScript client-scripts from C# code). The greatest new feature is the support of &lt;A href="http://ajax.asp.net/"&gt;ASP.NET AJAX&lt;/A&gt;. So I wrote a tutorial to discover Script# by creating ASP.NET AJAX components. In this article you will create an IP v4 calculator that can compute Network IPs from an host IP and a subnet mask. All the behavior will be executed client-side and will be generated by Script# from C# code (you will enjoy IntelliSense, refactoring, class diagrams etc. in your client code).&lt;/P&gt;
&lt;P&gt;Here is the english version (thanks to &lt;A href="http://www.madd0.com/fr/index.php"&gt;Mauricio&lt;/A&gt; for the help&amp;nbsp;on translation): &lt;A href="http://blogs.labo-dotnet.com/simon/docs/ScriptSharp%20and%20ASP.Net%20Ajax[en].pdf"&gt;ScriptSharp and ASP.Net Ajax[en].pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;And here is the french version: &lt;A href="http://blogs.labo-dotnet.com/simon/docs/ScriptSharp%20et%20ASP.Net%20Ajax[fr].pdf"&gt;ScriptSharp et ASP.Net Ajax[fr].pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Update:&lt;/P&gt;
&lt;P&gt;There was a mistake in the presentation of Script# (I wrote that Script# was inspired from GWT, and that is not true). This has been repaired.&lt;/P&gt;
&lt;P&gt;I released a &lt;A href="http://blogs.labo-dotnet.com/simon/archive/2007/05/31/17227.aspx"&gt;Visual Add-in allowing to use Script# to call Web Services&lt;/A&gt;.&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/17156.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>RE : [Misc] I've been tagged</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/02/27/15764.aspx</link><pubDate>Tue, 27 Feb 2007 10:54:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/02/27/15764.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/15764.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/15764.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/02/27/15764.aspx#comment</comments><slash:comments>399</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/15764.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;As &lt;A href="http://blogs.developpeur.org/patrice/default.aspx"&gt;Patrice&lt;/A&gt; tagged me, it is at me now to say 5 &amp;#8220;unknown&amp;#8221; things about me. I think that will not be very difficult as I do not say anything about me on this tech&amp;#8217;blog. So&amp;#8230; let&amp;#8217;s go!&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;First of all, I am from Orleans, a little-medium sized town 120 km south to Paris where I lived until I have been 17 (and until I have had my &amp;#8220;baccalaur&amp;#233;at&amp;#8221;). I came in Paris and have been a student at &lt;A href="http://www.supinfo.com/"&gt;Supinfo&lt;/A&gt; since this time (for the curious ones, I am 22 now, less than most of my current students ^^).&lt;/LI&gt;
&lt;LI&gt;I am a musician (a fucking artist as would say my friends of Supinfo .Net Lab&amp;#8230;), I play the guitar and the clarinet (at least, I played the clarinet, since I did not play it for about 6 months).&lt;/LI&gt;
&lt;LI&gt;I am a &amp;#8220;Supinfo certified trainer&amp;#8221; since September 2005. That means that I specialized myself in Microsoft .Net technologies and WEB development, and for my two last years at school, I teach to other students stuff like C#, ASP.NET, Windows Forms, ADO.NET, Remoting and non Microsoft subjects like XHTML/CSS, JavaScript, PHP&amp;#8230; That means too that when I am not teaching, I am training myself on recent or upcoming technologies such as .Net 3.0, C# 3, ADO.NET vNext, ASP.Net Ajax extensions (Soon on this blog, a forum engine based on ASP.NET and Ajax extensions which is my &amp;#8220;project of the moment&amp;#8221;. I promise something pretty cool).&lt;/LI&gt;
&lt;LI&gt;I am in my last year at Supinfo&amp;#8230; so I am looking for a job. I will be free from September 2007. Feel free to download source codes on this blog to have an overview of my technical skills and maybe send an email to &amp;#8220;Simon dot ferquel [nospam] at supinfo dot com&amp;#8221; for more details on my profile.&lt;/LI&gt;
&lt;LI&gt;I have a big default: I am a World of Warcraft player. A few months ago, I was really addicted, I have even been a raid leader, I played every nights&amp;#8230; This game is very cool, but also very life-intrusive&amp;#8230; So I reduced my game-time and replaced it (in part...) with &amp;#8220;at-home development&amp;#8221; time. MyExpos&amp;#233; is born during this &amp;#8220;World of Warcraft cure&amp;#8221;!&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;So I have to tag other blogs to propagate the chain&amp;#8230; The winners are: &lt;A href="http://blog.myspace.com/luclebland"&gt;Yann Lautr&amp;#233;dou&lt;/A&gt;&amp;nbsp;(my team manager), &lt;A href="http://blogs.developpeur.org/tom/default.aspx"&gt;Thomas Lebrun&lt;/A&gt; (another SCT actually in internship at Microsoft France), and &lt;A href="http://blogs.msdn.com/mitsufu/"&gt;Mitsuru Furuta&lt;/A&gt; (Microsoft France evangelist, C# addicted and leader of the MathFX project).&lt;BR&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/15764.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>My way to VISTA RTM</title><link>http://blogs.labo-dotnet.com/simon/archive/2007/02/13/15503.aspx</link><pubDate>Tue, 13 Feb 2007 08:58:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2007/02/13/15503.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/15503.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/15503.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2007/02/13/15503.aspx#comment</comments><slash:comments>316</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/15503.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Hi everyone.&lt;/P&gt;
&lt;P&gt;I received many encouragements for my work on MyExpos&amp;#233;, and I thank you very much for all of that. &lt;/P&gt;
&lt;P&gt;As you can see, MyExpos&amp;#233; has not been updated since Windows VISTA RTM is out for enterprises. There are&amp;nbsp;multiple reasons for that, much work at Supinfo, many other projects (you will see some of these in the upcoming weeks / months on this blog), but the main reason is that I had no Windows VISTA license (except a Business N version from my school&amp;nbsp;that I am boycotting)&amp;nbsp;to continue developping MyExpos&amp;#233; on RTM.&lt;/P&gt;
&lt;P&gt;I installed Vista Ultimate&amp;nbsp;two days ago on my laptop. So development will restart very soon. In a couple of weeks, I will release a new version with several improvements :&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Code robustness 
&lt;LI&gt;Improved security (currently, plugins are loaded in the same AppDomain as the core of MyExpos&amp;#233;, with privileges of the current user... Evil developpers can easily write keylogger plugins for MyExpos&amp;#233;, that will not be possible anymore in next version). 
&lt;LI&gt;Improved performances 
&lt;LI&gt;Bug fixes with the taskbar mini-app 
&lt;LI&gt;Improved performances on multi-core platforms 
&lt;LI&gt;Settings to enable / disable background transparency 
&lt;LI&gt;Settings to set transparency of the thumbnails 
&lt;LI&gt;Improved installer&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Lastly, I am looking for a developper who have a Windows Vista 64 bits capable computer to maintain my code for this platform (or a hardware manufacturer to "lend" me such a computer ^^).&lt;/P&gt;
&lt;P&gt;Contact me at : simon dot ferquel [nospam] at supinfo dot com&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/15503.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Expression Blend: My first impressions</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/12/05/12554.aspx</link><pubDate>Tue, 05 Dec 2006 16:22:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/12/05/12554.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/12554.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/12554.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/12/05/12554.aspx#comment</comments><slash:comments>21</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/12554.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;As I have used Expression Interactive Designer a lot in precedent projects, I was curious about new stuff in Expression Blend (the final name of Interactive Designer, aka Sparkle Designer).&lt;/P&gt;
&lt;P&gt;So there are some very good stuff&amp;#8230; and some not so good at all !&lt;/P&gt;
&lt;P&gt;I will summarize my impressions with a good / bad list by theme.&lt;/P&gt;
&lt;H2&gt;Layout&lt;/H2&gt;
&lt;H3&gt;Good&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;The new toolbar (but not its placement, at the left of the screen) 
&lt;LI&gt;Grouping of the toolboxes by themes (Interaction, Project, Properties, Resources, Results)&lt;/LI&gt;&lt;/UL&gt;
&lt;H3&gt;Bad&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Lack of interface customizations (we cannot dock the toolboxes where we want) 
&lt;LI&gt;Timeline placement: It is in a vertical toolbox, and fit in the half of the toolbox width!!! 
&lt;LI&gt;No "auto-hide" functionality for the toolboxes (like Visual Studio toolboxes)&lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;Features&lt;/H2&gt;
&lt;H3&gt;Good&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Event triggers and property triggers support (the best new feature of this version) 
&lt;LI&gt;Style / template editor (much better) 
&lt;LI&gt;Asset library 
&lt;LI&gt;Syntax highlighting of Xaml code...&lt;/LI&gt;&lt;/UL&gt;
&lt;H3&gt;Bad&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;... but no IntelliSense! 
&lt;LI&gt;Lack of style editing / affectation options using controls contextual menus (whereas templates are present). Workaround:&amp;nbsp; Menu bar -&amp;gt; Object -&amp;gt; Edit Style 
&lt;LI&gt;Integration with Visual Studio: No intellisense because the project is not loaded when you double-click on a .cs file&lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;General design&lt;/H2&gt;
&lt;H3&gt;Good&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Hmm Hmm... 
&lt;LI&gt;Icons of toolbar buttons and controls are not so bad...&lt;/LI&gt;&lt;/UL&gt;
&lt;H3&gt;Bad (here is the dark side of Expression Blend ^^)&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;Layout problems (see the layout part of this post) 
&lt;LI&gt;The Dark theme (default theme of Blend) is awful: it is dark, not user friendly, unreadable, and it does not respect color preferences of the user (and it does not integrate well in the user environment, definitely) 
&lt;LI&gt;It is even worst for short sighted people (low contrast, text written in gray over dark gray, default police size...) 
&lt;LI&gt;Menus design make me think of old dos text editors (squared, gray... ugly) 
&lt;LI&gt;The worst is for disabled elements (disabled menu items, for example, are printed in dark gray over darker gray) 
&lt;LI&gt;Light theme is even worst (uglier, really awful)&lt;/LI&gt;&lt;/UL&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/12554.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>My Exposé : new CTP today :p</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx</link><pubDate>Wed, 08 Nov 2006 15:12:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/11485.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/11485.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx#comment</comments><slash:comments>209</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/11485.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Today is a release date for My Expos&amp;#233;.&lt;/P&gt;
&lt;P&gt;Many improvements in this version:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;More natural thumbnails placement (no more grid) 
&lt;LI&gt;Tray icon with configuration dialog 
&lt;LI&gt;No more configuration file in ProgramFiles folder 
&lt;LI&gt;New object model for triggers (better resource freeing, new trigger methods, informations about the state of "MyExpose"...) 
&lt;LI&gt;Support for non-96 dpi screen settings 
&lt;LI&gt;Support of Windows Speech Recognition (open the configuration dialog, add a trigger, choose VoiceTrigger and configure it) 
&lt;LI&gt;Beautyful icons from &lt;A href="http://blog.madd0.com/"&gt;Mauricio Diaz&lt;/A&gt; (thanks a lot Mauricio ^^) 
&lt;LI&gt;...&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;You can download &lt;A href="http://blogs.labo-dotnet.com/simon/developments/MyExposeNovember2006CTP.msi"&gt;binaries&lt;/A&gt; or &lt;A href="http://blogs.labo-dotnet.com/simon/developments/MyExposeNovember2006CTP.zip"&gt;source code&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;[Update]&lt;/P&gt;
&lt;P&gt;If you have problems running MyExpos&amp;#233;, try to install the following package :&lt;BR&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&amp;amp;displaylang=en "&gt;http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&amp;amp;displaylang=en &lt;/A&gt; &lt;/P&gt;
&lt;P&gt;If you have have already installed an old version of My Expos&amp;#233;, please uninstall it before trying to install this version.&lt;/P&gt;
&lt;P&gt;For developers who are interested in developping their own triggers, see the code of the VoiceTrigger project.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.dotnetkicks.com/kick/?url=http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx"&gt;&lt;IMG alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx" border=0&gt;&lt;/A&gt; &lt;A href="http://www.digg.com/software/New_release_of_My_Expose_an_Expose_like_application_for_Windows_Vista"&gt;&lt;IMG height=17 alt=Digg! src="http://digg.com/img/badges/91x17-digg-button.png" width=91&gt; &lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/11485.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>My Exposé : A Mac OS X Exposé implementation for Windows VISTA [Update]</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/10/06/11250.aspx</link><pubDate>Fri, 06 Oct 2006 11:58:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/10/06/11250.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/11250.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/11250.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/10/06/11250.aspx#comment</comments><slash:comments>140</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/11250.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;A new version is available here:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx"&gt;http://blogs.labo-dotnet.com/simon/archive/2006/11/08/11485.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the original message:&lt;/P&gt;
&lt;P&gt;Even if it was written in French, my &lt;A href="http://blogs.labo-dotnet.com/simon/archive/2006/09/12/11116.aspx"&gt;last post &lt;/A&gt;seems to have been read by many people from&amp;nbsp;&lt;A href="http://blogs.msdn.com/greg_schechter/archive/2006/09/27/775027.aspx"&gt;all&lt;/A&gt;&amp;nbsp;&lt;A href="http://blog.dotnet-paderborn.de/2006/09/26/Die+Desktop+Window+Manager+API+Teil+1++Expose+Fuumlr+Vista.aspx"&gt;around&lt;/A&gt; &lt;A href="http://www.brethorsting.com/uidesign/2006/09/exposing_expose_on_windows_vis.html"&gt;the&lt;/A&gt; &lt;A href="http://blogs.msdn.com/kamvedbrat/archive/2006/09/25/770937.aspx"&gt;world&lt;/A&gt;. Thanks a lot&amp;nbsp;to all my refferrers.&amp;nbsp;So I am pleased to annouce a new version of MyExpos&amp;#233; (sorry it is not yet on Codeplex...), and this time, in english !&lt;/P&gt;
&lt;P&gt;What's new in this version ?&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;More robust code: Detection of resolution changes, desktop composition disabling... 
&lt;LI&gt;"Sensitive screen corners": Expos&amp;#233; can be triggered by the mouse 
&lt;LI&gt;Configuration file: Possibility to change settings like trigger keys/corners without restarting MyExpos&amp;#233; 
&lt;LI&gt;Extensibility: Third party developpers can develop their own triggers 
&lt;LI&gt;Incomplete support of multi-screen configurations: Multi-screen configurations may encounter some visual bugs but should work as expected. 
&lt;LI&gt;Performance: Better performances on multicore configurations (thanks to OpenMP)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;You can download either &lt;A href="http://blogs.labo-dotnet.com/simon/developments/MyExpose-src.zip"&gt;Source code&lt;/A&gt; (you should have to&amp;nbsp;configure projects to target your windows SDK folder)&amp;nbsp;or &lt;A href="http://blogs.labo-dotnet.com/simon/developments/MyExposeSetup.msi"&gt;binaries&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/11250.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>[Copycat] Expose sous Windows Vista RC1 [update]</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/09/12/11116.aspx</link><pubDate>Tue, 12 Sep 2006 17:20:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/09/12/11116.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/11116.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/11116.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/09/12/11116.aspx#comment</comments><slash:comments>107</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/11116.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Update: new version &lt;A href="http://blogs.labo-dotnet.com/simon/archive/2006/10/06/11250.aspx"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Le week end dernier, j'ai eu une id&amp;#233;e lumineuse... J'ai r&amp;#233;fl&amp;#233;chi &amp;#224; ce qu'apportait Mac OS X en terme d'exp&amp;#233;rience utilisateur et qui n'&amp;#233;xistait pas sur Windows Vista. La premi&amp;#232;re id&amp;#233;e qui m'est venue est "Expos&amp;#233;". &lt;/P&gt;
&lt;P&gt;Bref rappel sur cette feature &amp;#224; la fois toute b&amp;#232;te et super bien pens&amp;#233;e : &lt;/P&gt;
&lt;P&gt;En tant que d&amp;#233;veloppeur (et aussi en tant que Geek d'ailleurs), il m'arrive souvent d'avoir beaucoup (&amp;#233;norm&amp;#233;ment) de fen&amp;#234;tres ouvertes. Pour m'y retrouver, c'est bien souvent la gal&amp;#232;re, et je perds beaucoup (&amp;#233;norm&amp;#233;ment) de temps &amp;#224; essayer de trouver LA fen&amp;#234;tre dont j'ai besoin (cela se termine bien souvent par l'ouverture d'une nouvelle fen&amp;#234;tre au bout de 30 secondes de recherche ^^). Expos&amp;#233; permet par la pression d'une simple touche du clavier (F9 sur Mac) de voir l'int&amp;#233;gralit&amp;#233; des fen&amp;#234;tres sous forme de miniatures dispers&amp;#233;es sur tout l'&amp;#233;cran, ce qui permet de localiser imm&amp;#233;diatement la fen&amp;#234;tre qui nous int&amp;#233;resse et la faire passer en premier plan.&lt;/P&gt;
&lt;P&gt;Bien s&amp;#251;r Windows Vista poss&amp;#232;de quelques fonctionnalit&amp;#233;s similaires, mais dont l'ergonomie n'est pas aussi efficace (Flip3D ne permet pas de visualiser toutes les fenetres en m&amp;#234;me temps, et en plus elles sont de travers :p, et le nouveau alt+tab affiche des miniatures trop petites).&lt;/P&gt;
&lt;P&gt;Et bien ma ch&amp;#232;re Martine, votre serviteur vous apporte l'&amp;#233;bauche d'un rem&amp;#232;de &amp;#224; cet abominable manquement. Ca se trouve &lt;A href="http://blogs.labo-dotnet.com/simon/developments/expose.zip"&gt;ici&lt;/A&gt;, c'est absoluement pas support&amp;#233;, ca tourne sous Windows Vista RC1, il n'y a aucune gestion d'erreurs/exceptions, ca ne fonctionne que si Aero est activ&amp;#233;&amp;nbsp;et c'est cod&amp;#233; en C++ mixte (CLI + code natif pour limiter le nombre de P/Invoke). Ce sera bient&amp;#244;t sur Codeplex, et vous pouvez bien s&amp;#251;r faire n'importe quoi avec les sources...&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.labo-dotnet.com/simon/developments/expose.zip"&gt;&lt;IMG height=343 src="/simon/images/MyExpose.jpg" width=497 border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;(Cliquez sur l'image pour t&amp;#233;l&amp;#233;charger les sources / &amp;#233;x&amp;#233;cutables)&lt;/P&gt;
&lt;P&gt;Au fait, je n'ai pas tout &amp;#224; fait copi&amp;#233; Apple : F9 c'&amp;#233;tait trop chiant comme trigger pour le debugage (ca avait tendance &amp;#224; me rajouter des breakpoints ^^), alors j'ai choisi F12 :).&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/11116.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>[WinFX] Flickr Powered by WPF</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/08/23/10957.aspx</link><pubDate>Wed, 23 Aug 2006 14:52:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/08/23/10957.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/10957.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/10957.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/08/23/10957.aspx#comment</comments><slash:comments>250</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/10957.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Bonjour &amp;#224; tous.&lt;/P&gt;
&lt;P&gt;J'ai profit&amp;#233; de la r&amp;#233;installation de ma machine pour installer la CTP de juillet &lt;STRIKE&gt;de WinFX&lt;/STRIKE&gt; du Framework .Net 3.0, les outils de la gamme Expression et tout le tintouin, afin de jouer un peu avec WPF et WCF.&lt;/P&gt;
&lt;P&gt;Voil&amp;#224; donc un petit programme permettant d'int&amp;#233;roger la base de donn&amp;#233;e d'images &lt;A href="http://www.flickr.com/"&gt;Flickr&lt;/A&gt;&amp;nbsp;dans une interface cr&amp;#233;&amp;#233;e gr&amp;#226;ce &amp;#224; Windows Presentation Foundation. &lt;/P&gt;
&lt;P&gt;Bien s&amp;#251;r, pour pouvoir lancer la &lt;A href="http://blogs.labo-dotnet.com/simon/developments/FlickrFXBrowser_bin.zip"&gt;version compil&amp;#233;e&lt;/A&gt;, il vous faudra le &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=62057A6F-185F-41DB-ABE5-678F6FC388F0&amp;amp;displaylang=en"&gt;Framework .Net 3.0 Runtime July 2006&amp;nbsp;CTP&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Pour les aventuriers qui voudraient explorer et compiler le &lt;A href="http://blogs.labo-dotnet.com/simon/developments/FlickrFXBrowser_src.zip"&gt;code source&lt;/A&gt;, il faudra &amp;#233;galement le &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=1D7F16B3-D2D5-48F7-9494-6696117EE712&amp;amp;displaylang=en"&gt;Windows SDK July 2006 CTP&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;A noter que le d&amp;#233;veloppement de cette application a &amp;#233;t&amp;#233; l'occasion de la d&amp;#233;couverte d'un &lt;A href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=657637&amp;amp;SiteID=1"&gt;bug&lt;/A&gt;&amp;nbsp;int&amp;#233;ressant (mais qui pour l'instant n'a pas l'air d'int&amp;#233;resser les principaux int&amp;#233;ress&amp;#233;s...).&lt;/P&gt;
&lt;P&gt;Un grand merci &amp;#224; &lt;A href="http://blog.madd0.com/?"&gt;Mauricio Diaz Orlich&lt;/A&gt;&amp;nbsp;qui a fait les visuels (logo du labo, ic&amp;#244;ne du bouton Full Screen et dessin de base de l'&amp;#233;cran de chargement) sous &lt;A href="http://www.microsoft.com/products/expression/en/graphic_designer/gd_free_trial.aspx"&gt;Expression Graphic Designer&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;A savoir que cette application qui n'a l'air de rien, aborde une bonne partie des nouveaut&amp;#233;s de WPF (Multithreading, animations, templates, styles, triggers, binding, DependencyObjects/DependencyProperties, ressources...).&lt;/P&gt;
&lt;P&gt;Pour finir un petit screenshot :) &lt;/P&gt;
&lt;P&gt;&lt;IMG height=307 src="/simon/images/FlickrFXBrowser.JPG" width=384 border=0&gt;&lt;/P&gt;
&lt;P&gt;PS : apr&amp;#232;s avoir s&amp;#233;lectionn&amp;#233; une photo dans la liste des r&amp;#233;sultats, vous pouvez cliquer sur l'image pour acc&amp;#233;der &amp;#224; la page flickr correspondant &amp;#224; la photo (pour laisser un commentaire ou autre), ou cliquer sur le bouton "Full Screen" pour avoir droit &amp;#224; une jolie animation (qui rame un peu, d'accord, mais jolie quand meme :p)&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/10957.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Article de Thomas Lebrun sur C# 3 et précisions sur les expressions</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/08/08/10892.aspx</link><pubDate>Tue, 08 Aug 2006 10:51:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/08/08/10892.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/10892.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/10892.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/08/08/10892.aspx#comment</comments><slash:comments>28</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/10892.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;&lt;A href="http://blogs.developpeur.org/tom/default.aspx"&gt;&lt;SPAN lang=FR&gt;Thomas Lebrun&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=FR&gt; vient de publier un &lt;A href="http://blogs.developpeur.org/tom/archive/2006/08/08/22824.aspx"&gt;article tr&amp;#232;s int&amp;#233;ressant&lt;/A&gt; sur les nouveaut&amp;#233;s de C# 3. Il couvre &amp;#224; peu pr&amp;#234;t tout ce que l&amp;#8217;on sait (et que l&amp;#8217;on peut tester) pour l&amp;#8217;instant sur la nouvelle version du langage ainsi que des technologies qui lui sont associ&amp;#233;es.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;Seulement en parcourant l&amp;#8217;article j&amp;#8217;ai un peu but&amp;#233; sur un paragraphe &amp;#224; propos des expressions Lambda. En effet, d&amp;#8217;apr&amp;#232;s certaines tournures de phrase, on pourrait croire que les expressions Lambda ne sont que des m&amp;#233;thodes anonymes dont on aurait raccourci la syntaxe&amp;#8230; Ce qui est vrai dans certains cas (pour Linq for Objects par exemple), mais qui est loin d&amp;#8217;&amp;#234;tre une g&amp;#233;n&amp;#233;ralit&amp;#233;.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;En effet le principal apport des expressions Lambda est justement la notion d&amp;#8217;"expression". Une expression diff&amp;#232;re d&amp;#8217;une instruction par le fait qu&amp;#8217;elle peut &amp;#234;tre &amp;#233;valu&amp;#233;e et interpr&amp;#233;t&amp;#233;e par le code. On parle alors d&amp;#8217;&amp;#233;valuation d&amp;#8217;arbre d&amp;#8217;expressions.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;Une expression Lambda sera donc suivant les cas compil&amp;#233;e en tant que m&amp;#233;thode anonyme (quand la m&amp;#233;thode dans laquelle elle est utilis&amp;#233;e attend un d&amp;#233;l&amp;#233;gu&amp;#233;), ou comme une "expression" lorsque la m&amp;#233;thode attend une expression.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;Pour illustrer ceci, voici un petit exemple de code&amp;nbsp;:&lt;/SPAN&gt; 
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;DataContext1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; dc = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;DataContext1&lt;/SPAN&gt;();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;var&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; allresults = &lt;SPAN style="COLOR: blue"&gt;from&lt;/SPAN&gt; p &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; dc.MyPersistentTypes&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: blue"&gt;select&lt;/SPAN&gt; p;&lt;/SPAN&gt;&lt;BR&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Copy all entities from database to a list"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt; allEntitiesInAList = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;List&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt;(allresults);&lt;/SPAN&gt;&lt;BR&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Query from table :"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;var&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; queryFromTable = &lt;SPAN style="COLOR: blue"&gt;from&lt;/SPAN&gt; p &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; dc.MyPersistentTypes&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where&lt;/SPAN&gt; p.Id &amp;gt; 2&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select&lt;/SPAN&gt; p;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Query from a list :"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;var&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; queryFromList = &lt;SPAN style="COLOR: blue"&gt;from&lt;/SPAN&gt; p &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; allEntitiesInAList&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where&lt;/SPAN&gt; p.Id &amp;gt; 2&lt;BR&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select&lt;/SPAN&gt; p;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;A noter ici que j&amp;#8217;utilise la syntaxe Linq plut&amp;#244;t qu&amp;#8217;une expression Lambda, ce qui revient exactement au m&amp;#234;me.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;Voyons maintenant le r&amp;#233;sultat de la d&amp;#233;compilation du code g&amp;#233;n&amp;#233;r&amp;#233; gr&amp;#226;ce &amp;#224; l&amp;#8217;outil &lt;A href="http://www.aisto.com/roeder/dotnet/"&gt;Reflector&amp;nbsp;&lt;/A&gt;:&lt;/SPAN&gt; 
&lt;P&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;DataContext1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; context1 = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;DataContext1&lt;/SPAN&gt;();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Table&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt; table1 = context1.MyPersistentTypes;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Copy all entities from database to a list"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt; list1 = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;List&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt;(table1);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Query from table :"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;ParameterExpression&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; expression1 = &lt;SPAN style="COLOR: teal"&gt;Expression&lt;/SPAN&gt;.Parameter(&lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;), &lt;SPAN style="COLOR: maroon"&gt;"p"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;IQueryable&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt; queryable1 =&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: teal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Queryable&lt;/SPAN&gt;.Where&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt;(context1.MyPersistentTypes,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Expression&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.Lambda&amp;lt;&lt;SPAN style="COLOR: teal"&gt;Func&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;,&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;&amp;gt;&amp;gt;(&lt;SPAN style="COLOR: teal"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Expression&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.GT(&lt;SPAN style="COLOR: teal"&gt;Expression&lt;/SPAN&gt;.Property(expression1,&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(MethodInfo) methodof(&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;.get_Id)),&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Expression&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.Constant(2, &lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;))),&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ParameterExpression&lt;/SPAN&gt;[] { expression1 }));&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Console&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Query from a list :"&lt;/SPAN&gt;);&lt;BR&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;if&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; (&lt;SPAN style="COLOR: teal"&gt;Program&lt;/SPAN&gt;.&amp;lt;&amp;gt;9__CachedAnonymousMethodDelegate5 == &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="COLOR: teal"&gt;&amp;nbsp;&amp;nbsp; Program&lt;/SPAN&gt;.&amp;lt;&amp;gt;9__CachedAnonymousMethodDelegate5 = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Func&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;&amp;gt;(&lt;SPAN style="COLOR: teal"&gt;Program&lt;/SPAN&gt;.&lt;MAIN&gt;b__3);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;}&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;&lt;BR&gt;IEnumerable&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt; enumerable1 = &lt;SPAN style="COLOR: teal"&gt;Sequence&lt;/SPAN&gt;.Where&amp;lt;&lt;SPAN style="COLOR: teal"&gt;MyPersistentType&lt;/SPAN&gt;&amp;gt;(list1, &lt;SPAN style="COLOR: teal"&gt;Program&lt;/SPAN&gt;.&amp;lt;&amp;gt;9__CachedAnonymousMethodDelegate5);&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;On voit bien ici que la m&amp;#234;me expression lambda est compil&amp;#233;e de fa&amp;#231;on diff&amp;#233;rente selon le cas dans lequel elle est utilis&amp;#233;e. Pour le type Table&lt;MYPERSISTENTTYPE&gt;, on a droit &amp;#224; quelque chose relativement compliqu&amp;#233; en apparence (il s&amp;#8217;agit en fait d&amp;#8217;un arbre d&amp;#8217;expression), alors que pour le type List&lt;MYPERSISTENTTYPE&gt;, on utilise un d&amp;#233;l&amp;#233;gu&amp;#233; g&amp;#233;n&amp;#233;r&amp;#233; (de la m&amp;#234;me facon qu&amp;#8217;une m&amp;#233;thode anonyme).&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;En fait, le compilateur a d&amp;#233;tect&amp;#233; que le type Table&lt;MYPERSISTENTTYPE&gt; impl&amp;#233;mente IQueryable (et plus pr&amp;#233;cis&amp;#233;ment IQueryable&amp;lt;MyPersistantType&amp;gt;&lt;MYPERSISTENTTYPE&gt;), et a donc d&amp;#233;cid&amp;#233; de cr&amp;#233;er un arbre d&amp;#8217;expressions qui sera &amp;#233;valu&amp;#233; par le provider utilis&amp;#233; (d&amp;#233;finit au niveau du DataContext dans notre cas), afin d&amp;#8217;obtenir le r&amp;#233;sultat escompt&amp;#233; (dans notre cas, ceci &amp;#233;x&amp;#233;cutera une requete SQL du genre &amp;#171;&amp;nbsp;SELECT * from MyTable where ID &amp;gt; 2&amp;nbsp;&amp;#187; et nous la renverra sous la forme d&amp;#8217;une &amp;#233;num&amp;#233;ration de MyPersistentType). A not&amp;#233; que l&amp;#8217;arbre d&amp;#8217;expression n&amp;#8217;est pas &amp;#233;valu&amp;#233; dans notre cas, car nous n&amp;#8217;avons pas utilis&amp;#233; le r&amp;#233;sultat de la requ&amp;#234;te dans notre code. En effet, l&amp;#8217;&amp;#233;x&amp;#233;cution de la requ&amp;#234;te ne se fait qu&amp;#8217;au moment o&amp;#249; queryFromTable est utilis&amp;#233;.&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=FR&gt;Je ne d&amp;#233;taillerai pas l&amp;#8217;arbre d&amp;#8217;expression g&amp;#233;n&amp;#233;r&amp;#233; ici, dans les grande lignes, on peut voir que l&amp;#8217;on passe &amp;#224; la m&amp;#233;thode Where une lambda expression (Expression.Lambda), constitu&amp;#233;e d&amp;#8217;une comparaison "Greater than" (Expression.GT) s&amp;#8217;&amp;#233;xercant sur une propri&amp;#233;t&amp;#233; d&amp;#8217;un parametre de l&amp;#8217;expression (Expression.Property) et une constante (Expression.Constant).&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/10892.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Encore un petit peu de Javascript...</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/06/29/10747.aspx</link><pubDate>Thu, 29 Jun 2006 12:13:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/06/29/10747.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/10747.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/10747.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/06/29/10747.aspx#comment</comments><slash:comments>27</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/10747.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Suite &amp;#224; mon dernier post, voici une application de mon "moteur d'animation" : un moteur de Drag and Drop anim&amp;#233; (c'est &amp;#224; dire que les &amp;#233;l&amp;#233;ments d&amp;#233;placables ne se t&amp;#233;l&amp;#233;portent pas, mais glissent &amp;#233;l&amp;#233;gament vers leur nouvelle position). Vous pouvez en voir un aper&amp;#231;u &lt;A href="http://blogs.labo-dotnet.com/simon/testDZ.html"&gt;ici&lt;/A&gt;, et t&amp;#233;l&amp;#233;charger les sources &lt;A href="http://blogs.labo-dotnet.com/simon/developments/JSDragDropManager.zip"&gt;par l&amp;#224;&lt;/A&gt;. Tout commentaire est le bienvenu :).&lt;/P&gt;
&lt;P&gt;Sinon, si quelqu'un sait comment &amp;#233;viter les s&amp;#233;lections de texte intempestives lors du d&amp;#233;placement de mes parts, ca me serait bien utile...&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/10747.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Un petit peu de Javascript</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/06/19/10734.aspx</link><pubDate>Mon, 19 Jun 2006 07:44:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/06/19/10734.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/10734.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/10734.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/06/19/10734.aspx#comment</comments><slash:comments>21</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/10734.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Pendant que mes &amp;#233;l&amp;#232;ves sont en TP not&amp;#233;, j'occupe mon temps en faisant un peu de Javascript. Je suis en train de d&amp;#233;velopper un moteur d'animation (permettant d'animer un peu&amp;nbsp;tout et n'importe quoi et surtout des attributs css). C'est en Javascript, c'est orient&amp;#233; objet, il y'a m&amp;#234;me un peu d'h&amp;#233;ritage... Bref, tout retour est le bienvenu ! &lt;A href="http://blogs.labo-dotnet.com/simon/developments/JSAnimationEngine.zip"&gt;http://blogs.labo-dotnet.com/simon/developments/JSAnimationEngine.zip&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/10734.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>Outlook 2007 &amp; fichier de données</title><link>http://blogs.labo-dotnet.com/pierre_gildas/archive/2006/06/13/10719.aspx</link><pubDate>Tue, 13 Jun 2006 08:56:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/pierre_gildas/archive/2006/06/13/10719.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/pierre_gildas/comments/10719.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/pierre_gildas/comments/commentRss/10719.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/pierre_gildas/archive/2006/06/13/10719.aspx#comment</comments><slash:comments>18</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/pierre_gildas/services/trackbacks/10719.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/pierre_gildas/rss.aspx">Pierre-Gildas MILLON (Ishtanzar)</source><description>&lt;p&gt;Depuis le début de l'année j'utilise un fichier de données (pst) situé sur un disque dur USB afin de pouvoir l'utiliser sur mon PC portable ou sur mon fixe simplement en branchant mon disque dur et sans devoir faire de synchronisation quelconque.&lt;/p&gt;
&lt;p&gt;Jusque là pas de soucis. Et puis hier, j'installe la beta 2 d'Office 2007 et là... c'est le drame :&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;img src="http://millonp.e-supinfo.net/pics/outlook2k7b2.png" alt="" title=""/&gt;&lt;/div&gt;
&lt;p&gt;Partit en quête d'une réponse à mon problème, ni google ni même le site de Microsoft ne vinrent à mon secours&lt;/p&gt;
&lt;p&gt;Après plusieurs heures de tests divers il semble qu'Outlook n'aime tout simplement pas les fichiers de données sur disque dur USB !&lt;/p&gt;
&lt;p&gt;En effet si le fichier de données se trouve sur le disque dur interne, pas de soucis !&lt;/p&gt;
&lt;p&gt;Certains me disent qu'Outlook détecte le disque dur comme étant USB et m'interdit de l'utiliser. Dans ce cas, pourquoi pouvais-je le faire sous 2003 ?&lt;/p&gt;
&lt;p&gt;Bug ou "normal", j'attends de voir la version finale en espérant que cela résoudra mon problème :/&lt;/p&gt;&lt;img src ="http://blogs.labo-dotnet.com/pierre_gildas/aggbug/10719.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Pierre-Gildas</dc:creator></item><item><title>Reflection : Aider la CLR à charger des assemblies</title><link>http://blogs.labo-dotnet.com/simon/archive/2006/06/01/10627.aspx</link><pubDate>Thu, 01 Jun 2006 13:47:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/simon/archive/2006/06/01/10627.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/simon/comments/10627.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/simon/comments/commentRss/10627.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/simon/archive/2006/06/01/10627.aspx#comment</comments><slash:comments>38</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/simon/services/trackbacks/10627.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/simon/rss.aspx">Simon on the (dot)Net</source><description>&lt;P&gt;Lors de la cr&amp;#233;ation d'un outil de Benchmark pour un projet en cours, je me suis retrouv&amp;#233; devant un s&amp;#233;rieux probl&amp;#232;me au sujet du chargement dynamique d'assemblies.&lt;/P&gt;
&lt;P&gt;En effet, le fait de charger une Assembly via &lt;CODE&gt;System.Reflection.Assembly.LoadFile("myAssembly.dll"); &lt;/CODE&gt;permet de manipuler les types de cette assemblies, mais ne la charge pas dans l'AppDomain de fa&amp;#231;on &amp;#224; ce qu'elle soit utilisable par d'autres assemblies charg&amp;#233;es dynamiquement.&lt;/P&gt;
&lt;P&gt;Voici un petit code d'exemple (qui ne fonctionne donc que lorsque la m&amp;#233;thode &amp;#224; tester n'utilise pas de types d&amp;#233;clar&amp;#233;s dans des assemblies r&amp;#233;f&amp;#233;renc&amp;#233;es)&amp;nbsp;:&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: black thin dotted; PADDING-RIGHT: 1em; BORDER-TOP: black thin dotted; PADDING-LEFT: 1em; BACKGROUND: #d3d3d3; PADDING-BOTTOM: 1em; MARGIN: 1em; BORDER-LEFT: black thin dotted; PADDING-TOP: 1em; BORDER-BOTTOM: black thin dotted"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Reflection;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; Tester&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;Main&lt;/st1:place&gt;(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;(args.Length != 3)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Console&lt;/SPAN&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Usage : \nTester \"Assembly path\" ClassName MethodName"&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Retrieve the absolute path of the assembly&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; absolutePath = System.IO.&lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;.GetFullPath(args[0]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Load the assembly using Reflection API&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt; assToTest = &lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;.LoadFile(absolutePath);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Load the type and create an instance of the type to test&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Type&lt;/SPAN&gt; typeToTest= assToTest.GetType(args[1]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; objToTest = typeToTest.GetConstructor(&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Type&lt;/SPAN&gt;[]{}).Invoke(&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Call the method to test using reflection&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;typeToTest.GetMethod(args[2]).Invoke(objToTest,&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;}&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;
&lt;P&gt;Si nous le lan&amp;#231;ons sur une m&amp;#233;thode utilisant des types d&amp;#233;finis dans des assemblies externes, nous recevons une exception de de ce style :&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---&amp;gt; System.IO.FileNotFoundException: Could not load file or assembly 'ReferencedAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified. File name: 'ReferencedAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'&lt;BR&gt;&amp;nbsp;&amp;nbsp; at AssemblyToTest.ClassToTest.MethodToTest()&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Il existe cependant une m&amp;#233;thode permettant d'aider la CLR &amp;#224; localiser les assemblies r&amp;#233;f&amp;#233;renc&amp;#233;es, mais non charg&amp;#233;es dans l'AppDomain. En effet la classe &lt;FONT face="Courier New"&gt;AppDomain&lt;/FONT&gt; poss&amp;#232;de un &amp;#233;v&amp;#232;nement &lt;FONT face="Courier New"&gt;AssemblyResolve&lt;/FONT&gt; appel&amp;#233;e &amp;#224; chaque fois que la CLR n'arrive pas &amp;#224; r&amp;#233;soudre elle m&amp;#234;me le nom d'une Assembly. Voici comment l'on pourrait am&amp;#233;liorer notre petit programme afin qu'il charge automatiquement les assemblies qui se trouvent dans le r&amp;#233;pertoire de l'assembly test&amp;#233;e :&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: black thin dotted; PADDING-RIGHT: 1em; BORDER-TOP: black thin dotted; PADDING-LEFT: 1em; BACKGROUND: #d3d3d3; PADDING-BOTTOM: 1em; MARGIN: 1em; BORDER-LEFT: black thin dotted; PADDING-TOP: 1em; BORDER-BOTTOM: black thin dotted"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Reflection;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.IO;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; Tester&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; &lt;st1:place w:st="on"&gt;Main&lt;/st1:place&gt;(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;(args.Length != 3)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Console&lt;/SPAN&gt;.WriteLine(&lt;SPAN style="COLOR: maroon"&gt;"Usage : \nTester \"Assembly path\" ClassName MethodName"&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Retrieve the absolute path of the assembly&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; absolutePath = System.IO.&lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;.GetFullPath(args[0]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Load the assembly using Reflection API&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt; assToTest = &lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;.LoadFile(absolutePath);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; directoryPath = System.IO.&lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;.GetDirectoryName(absolutePath);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;AppDomain&lt;/SPAN&gt;.CurrentDomain.AssemblyResolve+=&lt;SPAN style="COLOR: blue"&gt;delegate&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender,&lt;SPAN style="COLOR: teal"&gt;ResolveEventArgs&lt;/SPAN&gt; arg)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; assemblySimpleName =arg.Name.Substring(0,arg.Name.IndexOf(&lt;SPAN style="COLOR: maroon"&gt;','&lt;/SPAN&gt;));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; path;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;File&lt;/SPAN&gt;.Exists((path = &lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;.Combine(directoryPath, assemblySimpleName+&lt;SPAN style="COLOR: maroon"&gt;".dll"&lt;/SPAN&gt;))))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;.LoadFile(path);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;File&lt;/SPAN&gt;.Exists((path = &lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;.Combine(directoryPath, assemblySimpleName+&lt;SPAN style="COLOR: maroon"&gt;".exe"&lt;/SPAN&gt;))))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;.LoadFile(path);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;else&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;throw&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;InvalidOperationException&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;.Format(&lt;SPAN style="COLOR: maroon"&gt;"The referenced assembly \"{0}\" is not in the same directory as the tested assembly"&lt;/SPAN&gt;,arg.Name));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Load the type and create an instance of the type to test&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;Type&lt;/SPAN&gt; typeToTest= assToTest.GetType(args[1]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; objToTest = typeToTest.GetConstructor(&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Type&lt;/SPAN&gt;[]{}).Invoke(&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Call the method to test using reflection&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;typeToTest.GetMethod(args[2]).Invoke(objToTest,&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;}&lt;/SPAN&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/simon/aggbug/10627.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Simon Ferquel</dc:creator></item><item><title>[Sharepoint] Le keynote de la Sharepoint Conference 2006 présenté par Bill Gates est dispo online</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/18/keynotesharepointconference2006.aspx</link><pubDate>Thu, 18 May 2006 09:46:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/18/keynotesharepointconference2006.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10607.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10607.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/18/keynotesharepointconference2006.aspx#comment</comments><slash:comments>169</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10607.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;CENTER&gt;&lt;IMG src="/patrice/images/sharepointconference.jpg"&gt;&lt;/CENTER&gt;
&lt;P&gt;Tout est dans le titre, le webcast du keynote de la Sharepoint Conference 2006 est disponible &amp;#224; cette adresse :&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/winme/0605/27595/BillG_MBR.asx"&gt;http://www.microsoft.com/winme/0605/27595/BillG_MBR.asx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt; &lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10607.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>Suivez la Sharepoint Conference 2006 jour après jour</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/17/sharepointconference2006.aspx</link><pubDate>Wed, 17 May 2006 06:40:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/17/sharepointconference2006.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10597.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10597.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/17/sharepointconference2006.aspx#comment</comments><slash:comments>22</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10597.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;DIV align=center&gt;&lt;IMG src="/patrice/images/sharepointconference.jpg"&gt;&amp;nbsp;&lt;BR&gt;&lt;A href="http://blogs.developpeur.org/themit/"&gt;Renaud Comte &lt;/A&gt;expert connu et reconnu sur les produits Sharepoint de Microsoft (WSS et SPS) et nomm&amp;#233; MVP par Microsoft depuis plusieurs ann&amp;#233;es, vous propose de suivre l'actualit&amp;#233; de Sharepoint et plus particuli&amp;#232;rement Sharepoint 2007 inclus dans la prochaine version de la gamme Office System gr&amp;#226;ce &amp;#224; son blog. &lt;/DIV&gt;
&lt;DIV align=center&gt;Il poste ainsi diff&amp;#233;rentes informations importantes &amp;#224; propos de Sharepoint 2007, et nous permet ainsi de suivre &amp;#224; distance la Sharepoint Conference 2006 qui a lieu en ce moment aux Etats-Unis.&lt;/DIV&gt;
&lt;DIV align=center&gt;En savoir plus :&lt;BR&gt;&lt;A href="http://blogs.developpeur.org/themit/archive/category/1179.aspx"&gt;http://blogs.developpeur.org/themit/archive/category/1179.aspx&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV align=center&gt;Flux RSS : &lt;A href="http://blogs.developpeur.org/themit/rss.aspx?CategoryID=1179"&gt;http://blogs.developpeur.org/themit/rss.aspx?CategoryID=1179&lt;/A&gt;&lt;/DIV&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10597.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>[Misc] Outlook et les fuseaux horaires (Suite)</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/15/10591.aspx</link><pubDate>Mon, 15 May 2006 09:26:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/15/10591.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10591.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10591.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/15/10591.aspx#comment</comments><slash:comments>58</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10591.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;P&gt;Dans la suite des &lt;A href="http://blogs.microsoft.fr/clauer/archive/2006/05/12/28159.aspx"&gt;nouvelles&lt;/A&gt; &amp;nbsp;&lt;A href="http://blogs.developpeur.org/themit/archive/2006/05/12/20525.aspx"&gt;fonctionnalit&amp;#233;s&lt;/A&gt; d'Office 2007 bien pratiques, j'ai eu le plaisir de d&amp;#233;couvrir que les fuseaux horaires &lt;A href="http://blogs.msdn.com/cjohnson/archive/2006/05/08/592014.aspx"&gt;sont enfin (r&amp;#233;&amp;#233;llement) support&amp;#233;s&amp;nbsp;gr&amp;#226;ce&amp;nbsp;&amp;#224;&amp;nbsp;Outlook 2007 &lt;/A&gt;! :) (&lt;A href="http://blogs.labo-dotnet.com/patrice/archive/2006/01/09/10460.aspx"&gt;lire mon pr&amp;#233;c&amp;#233;dent post &amp;#224; ce sujet&lt;/A&gt;).&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://blogs.msdn.com/photos/chjohn/images/592066/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;Source : &lt;A href="http://diazorm.e-supinfo.net/blog/?p=133"&gt;http://diazorm.e-supinfo.net/blog/?p=133&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10591.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>OpenXMLDeveloper.org : Créer, lire, manipuler les différents formats XML de la gamme Office</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/06/10587.aspx</link><pubDate>Fri, 05 May 2006 22:15:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/06/10587.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10587.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10587.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/06/10587.aspx#comment</comments><slash:comments>109</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10587.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;&lt;IMG height=60 src="/patrice/images/xml_small.gif" width=60 border=0&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Une des nouveaut&amp;#233;s les plus int&amp;#233;ressantes introduite avec Microsoft Office 2003&amp;nbsp;est le support d'XML, via XML, XSL, et XSD et la cr&amp;#233;ation de formats XML propres &amp;#224; la plupart des outils de la gamme Office : Word, Excel, Visio, Powerpoint avec respectivement le WordML, le SpreadSheetML, le DataDiagrammingML. (sans oublier la cr&amp;#233;ation d'InfoPath, un &amp;#233;diteur XML permettant de cr&amp;#233;er et remplir des formulaires &amp;#233;lectroniques bas&amp;#233;s sur des sch&amp;#233;mas XSD).&lt;/FONT&gt;&lt;/P&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Cette introduction du format XML permet de cr&amp;#233;er des documents non plus sous forme binaire comme on le faisait jusqu'alors mais sous forme XML, et donc permet de cr&amp;#233;er de mani&amp;#232;re plus simple n'importe quel type de document&amp;nbsp; &amp;#224; partir de n'importe quelle technologie/langage etc.&lt;/FONT&gt;&lt;/P&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Le g&amp;#233;ant de Redmond confirme et poursuit son effort d'adoption d'XML avec Office 2007 et &amp;#233;galement avec WinFX qui propose une API de manipulation des documents Office.&lt;/FONT&gt;&lt;/P&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Si vous souhaitez avoir des infos sur ces formats de fichiers et d&amp;#233;couvrir comment cr&amp;#233;er des applications capable de g&amp;#233;n&amp;#233;rer des documents Word, Excel, Powerpoint au format XML, un site a &amp;#233;t&amp;#233; cr&amp;#233;&amp;#233; par Microsoft&amp;nbsp;qui est disponible depuis la fin Mars&amp;nbsp; : &lt;/FONT&gt;&lt;A href="http://www.OpenXMLDeveloper.org"&gt;&lt;FONT size=2&gt;http://www.OpenXMLDeveloper.org&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10587.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>Envie d'en savoir plus sur le support des CSS de Internet Explorer 7 ?</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/10583.aspx</link><pubDate>Thu, 04 May 2006 20:39:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/10583.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10583.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10583.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/10583.aspx#comment</comments><slash:comments>46</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10583.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;P&gt;Le support des CSS est un des points les souvent &amp;#233;voqu&amp;#233;s dans les critiques rencontr&amp;#233;es par Internet Explorer. Channel 9 vient de publier une interview de Markus Mielke PM dans l'&amp;#233;quipe d'IE 7 (la prochaine version d'IE pour le moment encore en b&amp;#233;ta) o&amp;#249; celui-ci revient sur les probl&amp;#232;mes pr&amp;#233;sents dans les versions actuelles d'Internet Explorer et pr&amp;#233;sente les nouveaut&amp;#233;s apport&amp;#233;es par IE 7 quand au support de ce standard.&lt;/P&gt;
&lt;P&gt;En savoir plus :&lt;BR&gt;&lt;A href="http://channel9.msdn.com/showpost.aspx?postid=188986"&gt;http://channel9.msdn.com/showpost.aspx?postid=188986&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10583.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>Les sessions du Mix'06 de Las Vegas disponibles en téléchargement</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/downloadmix06.aspx</link><pubDate>Thu, 04 May 2006 09:57:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/downloadmix06.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10581.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10581.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/04/downloadmix06.aspx#comment</comments><slash:comments>28</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10581.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;P&gt;Les sessions de la conf&amp;#233;rence Mix'06 qui s'est d&amp;#233;roul&amp;#233; &amp;#224; Las Vegas il y a un peu&amp;nbsp;plus d'un mois sont disponibles en consultation et t&amp;#233;l&amp;#233;chargement, et tout ceci gratuitement ! Une bonne occasion de d&amp;#233;couvrir Atlas, WPF, etc.&lt;/P&gt;
&lt;P&gt;Pour consulter et/ou t&amp;#233;l&amp;#233;charger les sessions :&lt;BR&gt;&lt;A href="http://sessions.mix06.com/"&gt;http://sessions.mix06.com/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Source : &lt;A href="http://blogs.microsoft.fr/clauer"&gt;Blog de Christophe Lauer&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10581.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>Le futur des compilateurs avec le projet Phoenix</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/03/phoenixprojectchannel9.aspx</link><pubDate>Wed, 03 May 2006 05:55:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/03/phoenixprojectchannel9.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10577.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10577.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/03/phoenixprojectchannel9.aspx#comment</comments><slash:comments>88</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10577.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;&lt;IMG src="http://channel9.msdn.com/Photos/159391.jpg"&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Je vous avez d&amp;#233;j&amp;#224; parl&amp;#233; du &lt;/FONT&gt;&lt;A href="http://research.microsoft.com/phoenix/"&gt;&lt;FONT size=2&gt;projet Phoenix&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt; (allez faire un tour sur le site il a &amp;#233;t&amp;#233; mis &amp;#224; jour il y a quelques mois et il est bien mieux qu'avant) d&amp;#233;velopp&amp;#233; par Microsoft research, projet qui avait &amp;#233;t&amp;#233; pr&amp;#233;sent&amp;#233; par &lt;/FONT&gt;&lt;A href="http://blogs.labo-dotnet.com/patrice/archive/2005/04/29/ja2005.aspx"&gt;&lt;FONT size=2&gt;John Lefor lors des journ&amp;#233;es MSR 2005&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;. Ce projet est un framework de compilation destin&amp;#233; &amp;#224; faciliter la cr&amp;#233;ation de compilateurs en proposant des services pr&amp;#234;ts &amp;#224; l'emploi que cela soit au niveau du parsing du code ou d'algorythmes d'optimisation (cela permettra entre autres de r&amp;#233;duire l'&amp;#233;cart qu'il y a entre le compilateur C++ et le compilateur C# de Microsoft (ce dernier ayant 20 ans de retard par rapport au premier, oui je suis m&amp;#233;chant et j'exag&amp;#232;re :).&lt;/FONT&gt;&lt;/P&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;Channel 9 vient de publier une vid&amp;#233;o avec Jim Hogg Program Manager de Phoenix qui vous permettra de d&amp;#233;couvrir ce framework qui servira probablement de base aux compilateurs de Microsoft dans un avenir plus ou moins proche.&lt;/FONT&gt;&lt;/P&gt;
&lt;P align=justify&gt;&lt;FONT size=2&gt;En savoir plus :&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://channel9.msdn.com/showpost.aspx?postid=188589"&gt;&lt;FONT size=2&gt;http://channel9.msdn.com/showpost.aspx?postid=188589&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10577.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>[TFS] Beaucoup de ressources sur Team System</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/05/02/videosteamsystem.aspx</link><pubDate>Tue, 02 May 2006 10:18:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/05/02/videosteamsystem.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10575.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10575.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/05/02/videosteamsystem.aspx#comment</comments><slash:comments>50</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10575.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;IMG height=60 src="/patrice/images/roadmapsmall.jpg" width=80 border=0&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;FONT size=2&gt;Microsoft a mis &amp;#224; jour l'espace MSDN consacr&amp;#233; &amp;#224; Team System, et le r&amp;#233;sultat est tr&amp;#232;s sympathique ! Beaucoup de vid&amp;#233;os, de webcasts sont l&amp;#224; pour vous expliquer comment r&amp;#233;aliser toutes les t&amp;#226;ches courantes avec TFS. Ces vid&amp;#233;os class&amp;#233;es selon votre niveau de connaissance (Intermediate, Advanced, Expert) sont un excellent moyen de vous former ou vous perfectionner sur cette plate-forme.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Plus d'infos :&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/vstudio/teamsystem/expand/"&gt;&lt;FONT size=2&gt;http://msdn.microsoft.com/vstudio/teamsystem/expand/&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10575.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>WPF et ASP.net 2 sous les palmiers</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/04/30/10574.aspx</link><pubDate>Sun, 30 Apr 2006 18:53:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/04/30/10574.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10574.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10574.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/04/30/10574.aspx#comment</comments><slash:comments>147</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10574.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;P align=justify&gt;Je reviens de l'ile de la R&amp;#233;union o&amp;#249; j'ai donn&amp;#233; une formation et j'en ai profit&amp;#233; pour passer un peu de temps &amp;#224; SUPINFO Oc&amp;#233;an Indien o&amp;#249; j'ai pr&amp;#233;sent&amp;#233; ASP.net 2 et WPF gr&amp;#226;ce &amp;#224; deux sessions d'1H30 chacune.&lt;/P&gt;
&lt;P align=justify&gt;J'ai commenc&amp;#233; un premier soir par la pr&amp;#233;sentation de Windows Presentation Foundation, la couche pr&amp;#233;sentation de WinFX. Apr&amp;#232;s avoir pr&amp;#233;sent&amp;#233; WinFX, le workflow Graphiste =&amp;gt; Designer =&amp;gt;D&amp;#233;veloppeur gr&amp;#226;ce aux outils de la gamme Expression et &amp;#224; Visual Studio, ainsi que les nouveaut&amp;#233;s apport&amp;#233;es par WPF (support du vectoriel, de la 3D, le langage de s&amp;#233;rialisation XAML, etc.), j'ai &amp;#233;t&amp;#233; &amp;#233;tonn&amp;#233; de la r&amp;#233;action des &amp;#233;tudiants pr&amp;#233;sents. Apr&amp;#232;s les diff&amp;#233;rentes d&amp;#233;mos pr&amp;#233;sent&amp;#233;es, ceux-ci &amp;#233;taient certes conquis par la technologie mais ils &amp;#233;taient surtout inquiets et se demandaient quelle allait &amp;#234;tre la place du d&amp;#233;veloppeur dans le futur &amp;#233;tant donn&amp;#233; les avanc&amp;#233;es que les diff&amp;#233;rents &amp;#233;diteurs du monde logiciel nous proposent.&lt;/P&gt;
&lt;P align=justify&gt;Bien &amp;#233;videmment, &amp;#224; l'heure actuelle le travail d'un d&amp;#233;veloppeur ne se r&amp;#233;sume pas &amp;#224; cr&amp;#233;er la couche pr&amp;#233;sentation mais leur inqui&amp;#232;tude peut &amp;#234;tre compr&amp;#233;hensible. La mont&amp;#233;e en puissance de la programmation d&amp;#233;clarative(facile &amp;#224; g&amp;#233;n&amp;#233;rer/outiller et m&amp;#234;me &amp;#224; &amp;#233;crire manuellement), l'abstraction propos&amp;#233;e par les outils de d&amp;#233;veloppements, les assistants/wizards des IDE, la g&amp;#233;n&amp;#233;ration de code (via des outils de g&amp;#233;n&amp;#233;rations tels que CodeSmith ou Olymars, et via des outils de mod&amp;#233;lisation UML, ou via des DSL), r&amp;#233;duisent et vont r&amp;#233;duire tr&amp;#232;s fortement le nombre de lignes de code &amp;#224; &amp;#233;crire manuellement.&lt;/P&gt;
&lt;P align=justify&gt;Apr&amp;#232;s tout, il est d&amp;#233;j&amp;#224; possible de cr&amp;#233;er des applications compl&amp;#232;tes et fonctionnelles (Forums, gestion de membres, etc.) en ASP.net 2 sans &amp;#233;crire une seule ligne de code. Utilisation des providers, utilisation des fonctionnalit&amp;#233;s techniques (s&amp;#233;curit&amp;#233;, framework de pages, etc.) fournies par ASP.net 2, utilisation du SqlDataSource, rendent possible la cr&amp;#233;ation d'applications sans &amp;#233;crire une seule ligne de code, le seul code utilis&amp;#233; &amp;#233;tant du code d&amp;#233;claratif g&amp;#233;n&amp;#233;r&amp;#233; par l'IDE.&lt;/P&gt;
&lt;P align=justify&gt;Bien &amp;#233;videmment, une application cod&amp;#233;e de la sorte serait moins maintenable qu'une application correctement architectur&amp;#233;e (au niveau de l'acc&amp;#232;s aux donn&amp;#233;es), et il serait pr&amp;#233;f&amp;#233;rable de cr&amp;#233;er une r&amp;#233;&amp;#233;lle couche d'acc&amp;#232;s aux donn&amp;#233;es, une &amp;#233;ventuelle couche service, et des DTOs bind&amp;#233;s avec des ObjectDataSource. N&amp;#233;ammoins, le r&amp;#233;sultat est fonctionnel et n'importe quel d&amp;#233;veloppeur voire utilisateur avanc&amp;#233; peut parvenir &amp;#224; cr&amp;#233;er un site web sans&amp;nbsp; trop de probl&amp;#232;mes. De plus, les designers, principaux b&amp;#233;n&amp;#233;ficiaires des avanc&amp;#233;es apport&amp;#233;es par WPF, connaissent d&amp;#233;j&amp;#224; le d&amp;#233;veloppement notemment ceux travaillant avec Flash et son langage de script ActionScript.&lt;/P&gt;
&lt;P align=justify&gt;Bref tout ceci peut effrayer, mais la main humaine sera &amp;#224; mon avis toujours requise, la logique m&amp;#233;tier, la d&amp;#233;veloppement de fonctionnalit&amp;#233;s sp&amp;#233;cifiques, l'optimisation, le multithreading (qui prend &amp;#233;norm&amp;#233;ment d'importance avec l'apparition des micro-processeurs multi-coeurs) sont des exemples qui sont l&amp;#224; pour le prouver et c'est donc ce que j'ai essay&amp;#233; d'expliquer tr&amp;#232;s rapidement dans le temps qui m'&amp;#233;tait imparti.&lt;/P&gt;
&lt;P align=justify&gt;Concernant ma session sur ASP.net 2, je n'ai eu que des bons retours malgr&amp;#233; une d&amp;#233;mo rat&amp;#233;e suite &amp;#224; l'installation r&amp;#233;cente d'un VS.net 2003 qui a apparemment pas totalement plu &amp;#224; VS 2005.&lt;/P&gt;
&lt;P align=center&gt;&lt;A title="Photo Sharing" href="http://www.flickr.com/photos/patricevb/137470941/"&gt;&lt;IMG height=375 alt=2006_0427R&amp;#233;union0009 src="http://static.flickr.com/45/137470941_0e1aa12756.jpg" width=500 border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center&gt;&lt;A title="Photo Sharing" href="http://www.flickr.com/photos/patricevb/137470536/"&gt;&lt;IMG height=375 alt=2006_0427R&amp;#233;union0008 src="http://static.flickr.com/45/137470536_234db2a601.jpg" width=500 border=0&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10574.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>[WPF] Débuter avec Windows Presentation Foundation</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/04/27/debuterwpf.aspx</link><pubDate>Thu, 27 Apr 2006 05:17:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/04/27/debuterwpf.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10572.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10572.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/04/27/debuterwpf.aspx#comment</comments><slash:comments>18</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10572.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;IMG height=60 src="/patrice/images/wpf-vista.jpg" width=80 border=0&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;FONT size=2&gt;Si vous souhaitez tester vous-m&amp;#234;me la couche pr&amp;#233;sentation de WinFX, et ainsi ex&amp;#233;cuter les quelques d&amp;#233;mos disponibles sur le web ou alors m&amp;#234;me &amp;#233;crire vous m&amp;#234;me quelques lignes de code XAML, voici une liste de liens qui devrait vous aider.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Afin de vous motiver avant passer &amp;#224; l'action quelques vid&amp;#233;os de d&amp;#233;mos d'applications utilisant WPF :&lt;BR&gt;&lt;A href="http://channel9.msdn.com/ShowPost.aspx?PostID=121495"&gt;La d&amp;#233;mo NorthFace&lt;/A&gt;&lt;BR&gt;&lt;A href="http://channel9.msdn.com/Showpost.aspx?postid=114690"&gt;WinFX Hearths (Jeu de cartes)&lt;/A&gt;&lt;BR&gt;&lt;A href="http://channel9.msdn.com/ShowPost.aspx?PostID=181869"&gt;La d&amp;#233;mo HealthCare&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Remarque importante avant de commencer &amp;#224; installer quelque chose : toutes les versions disponibles sont des versions provisoires en cours de d&amp;#233;veloppement destin&amp;#233;s &amp;#224; permettre aux d&amp;#233;veloppeurs de tester ces nouvelles technologies. Ainsi, les produits peuvent &amp;#234;tre bugg&amp;#233;s et il est d&amp;#233;conseill&amp;#233; de les installer sur une machine de travail. Il est donc recommand&amp;#233; d'utiliser une machine virtuelle gr&amp;#226;ce &amp;#224; VPC ou VMWare ou alors de cr&amp;#233;er une deuxi&amp;#232;me partition bootable afin de profiter de toute la puissance de votre machine et de votre carte graphique.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Pour installer tout le n&amp;#233;cessaire, il faut installer l'ensemble de ces composants dans le bon ordre si possible (l'installation de WinFX apr&amp;#232;s Visual Studio ne pose cependant aucun probl&amp;#232;me).&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=F51C4D96-9AEA-474F-86D3-172BFA3B828B&amp;displaylang=en"&gt;&lt;FONT size=2&gt;Microsoft Pre-Release Software WinFX Runtime Components - February Community Technology Preview (CTP)&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;  : Le framework WinFX indispensable &amp;#224; l'ex&amp;#233;cution des applications se basant sur ce framework.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn.microsoft.com/vstudio/express/default.aspx"&gt;&lt;FONT size=2&gt;Visual Studio Express&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt; : Si vous n'avez pas Visual Studio 2005 (ou si vous souhaitez economiser de l'espace en &amp;#233;vitant d'installer le mastondonte :), vous pouvez utiliser les &amp;#233;ditions gratuites de Visual Studio : Visual C# Express ou Visual Basic.net Express.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9BE1FC7F-0542-47F1-88DD-61E3EF88C402&amp;displaylang=en"&gt;&lt;FONT size=2&gt;Microsoft&amp;#174; Windows&amp;#174; Software Development Kit (SDK) for the February 2006 Community Technology Preview (CTP) for Windows Vista and WinFX Runtime Components &lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;: Le SDK qui permet de cr&amp;#233;er des applications bas&amp;#233;es sur le framework WinFX et donc pouvant utiliser WPF. Contient des exemples tr&amp;#232;s interessants pour d&amp;#233;buter.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=AD0CE56E-D7B6-44BC-910D-E91F3E370477&amp;displaylang=en"&gt;&lt;FONT size=2&gt;Microsoft Visual Studio Code Name &amp;#8220;Orcas&amp;#8221; Community Technology Preview - Development Tools for WinFX&amp;#174;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt; : Les extensions de Visual Studio qui vous permettront de cr&amp;#233;er des projets WinFX et d'utiliser un designer de formulaires qui a le m&amp;#233;rite d'exister m&amp;#234;me s'il encore peu fonctionnel...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Si vous avez  des probl&amp;#232;mes d'installation :&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/tims/archive/2006/03/13/550600.aspx"&gt;&lt;FONT size=2&gt;http://blogs.msdn.com/tims/archive/2006/03/13/550600.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://msdn.microsoft.com/windowsvista/support/relnotes/winfxfebctp/default.aspx"&gt;&lt;FONT size=2&gt;http://msdn.microsoft.com/windowsvista/support/relnotes/winfxfebctp/default.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Si vous souhaitez tester la gamme expression qui propose notamment Graphic Designer ainsi que Interactive Designer destin&amp;#233;s respectivement aux graphistes et aux designers. :&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/products/expression/en/graphic_designer/gd_free_trial.aspx"&gt;&lt;FONT size=2&gt;Graphic Designer&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://www.microsoft.com/products/expression/en/graphic_designer/gd_free_trial.aspx"&gt;&lt;FONT size=2&gt;Interactive Designer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt; et des &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/products/expression/en/demos.mspx"&gt;&lt;FONT size=2&gt;vid&amp;#233;os d'entrainement afin de d&amp;#233;couvrir l'outil&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Vous pouvez &amp;#233;galement essayer&lt;/FONT&gt;&lt;A href="http://www.erain.com/products/ZAM3D/DefaultPDC.asp"&gt;&lt;FONT size=2&gt; Zam3D de Electronic Rain &lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2&gt;qui va plus loin que Interactive Designer pour ce qui a attrait &amp;#224; la 3D. &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;img src ="http://blogs.labo-dotnet.com/patrice/aggbug/10572.aspx" width = "1" height = "1" /&gt;</description><dc:creator>Patrice Lamarche</dc:creator></item><item><title>[Astuce] Où trouve-t-on la base Northwind dans SQL Server 2005 Express ?</title><link>http://blogs.labo-dotnet.com/patrice/archive/2006/04/26/northwindsqlserverexpress.aspx</link><pubDate>Wed, 26 Apr 2006 11:01:00 GMT</pubDate><guid isPermaLink="true">http://blogs.labo-dotnet.com/patrice/archive/2006/04/26/northwindsqlserverexpress.aspx</guid><wfw:comment>http://blogs.labo-dotnet.com/patrice/comments/10571.aspx</wfw:comment><wfw:commentRss>http://blogs.labo-dotnet.com/patrice/comments/commentRss/10571.aspx</wfw:commentRss><comments>http://blogs.labo-dotnet.com/patrice/archive/2006/04/26/northwindsqlserverexpress.aspx#comment</comments><slash:comments>25</slash:comments><trackback:ping>http://blogs.labo-dotnet.com/patrice/services/trackbacks/10571.aspx</trackback:ping><source url="http://blogs.labo-dotnet.com/patrice/rss.aspx">Patrice 's Blog</source><description>&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;IMG height=48 src="/patrice/images/sql_express.gif" width=141 border=0&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;FONT size=2&gt;La base de donn&amp;#233;es exemple Northwind que l'on retrouvait dans SQL Server 2000 n'est plus pr&amp;#233;sente dans SQL Server 2005. Premi&amp;#232;