<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_xiaomin</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/33885/rss</id><updated>2011-11-29T01:56:17Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/33885/rss"/><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180078.html</id><title type="text">浏览器内嵌.NET控件技术架构（二）</title><summary type="text">3. 使用javascript调用.Net对象使用javascript调用.Net控件在网页中，对于任何一个DOM对象，我们都可以使用document.getElementById方法获取该对象然后对它进行操作。而对于嵌入的.Net对象其实是一样的。 我们在前面的例子的基础上，给HelloIE控件增加一个函数 public void SendMessage(string text) { this.label1.Text = text; } 然后在页面中增加一个按钮，为按钮增加一个响应函数，获取HelloIE控件对象，并调用SendMessage函数。 &amp;lt;input id=&amp;quot;Bu</summary><published>2011-09-17T17:55:00Z</published><updated>2011-09-17T17:55:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180078.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180078.html"/><content type="html">&lt;p&gt;&lt;strong&gt;3. 使用javascript调用.Net对象&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;使用javascript调用.Net控件&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;在网页中，对于任何一个DOM对象，我们都可以使用document.getElementById方法获取该对象然后对它进行操作。而对于嵌入的.Net对象其实是一样的。 &#xD;
&lt;p&gt;我们在前面的例子的基础上，给HelloIE控件增加一个函数 &#xD;
&lt;p&gt;public void SendMessage(string text) &#xD;
&lt;p&gt;{ &#xD;
&lt;p&gt;this.label1.Text = text; &#xD;
&lt;p&gt;}&amp;nbsp; &#xD;
&lt;p&gt;然后在页面中增加一个按钮，为按钮增加一个响应函数，获取HelloIE控件对象，并调用SendMessage函数。 &#xD;
&lt;p&gt;&amp;lt;input id="Button1" type="button" onclick="SendMessageToWinControl();" value="Call SendMessage" /&amp;gt; &#xD;
&lt;p&gt;&amp;lt;script type="text/javascript"&amp;gt; &#xD;
&lt;p&gt;function SendMessageToWinControl() &#xD;
&lt;p&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; &#xD;
&lt;p&gt;var winCtrl = document.getElementById("HelloIE");&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; &#xD;
&lt;p&gt;winCtrl.SendMessage("Message sent from the HTML page!!");&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; &#xD;
&lt;p&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#xD;
&lt;p&gt;&amp;lt;/script&amp;gt; &#xD;
&lt;p&gt;重新编译，然后打开一个新的浏览器浏览，点击Call SendMessage按钮，结果如下： &#xD;
&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155006891.png"&gt;&lt;img title="wps_clip_image-15365" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="214" alt="wps_clip_image-15365" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155037155.png" width="244" border="0" /&gt;&lt;/a&gt; &#xD;
&lt;p&gt;如果点击Call SendMessage按钮后出现脚本错误&amp;#8220;对象不支持此属性或方法&amp;#8221;，是因为HelloIE控件类缺少一个最关键的代码：为该类添加[ComVisible(true)]属性。这也充分说明了该控件与IE的交互其实就是COM组件之间的通信，只不过是多经过一个中介：脚本引擎而已。 &#xD;
&lt;p&gt;每次重新编译程序以后，一定要开一个新的浏览器，启动一个新的进程，才能把新的dll加载进来。如果只是使用刷新页面，浏览器依然会使用已经加载的旧的dll。 &#xD;
&lt;p&gt;&lt;strong&gt;使用javascript调用非可视化.Net对象&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;可以嵌入网页的不仅仅是控件，所有的.Net类都可以。我们增加一个MathClass类，增加一个方法返回PI值。 &#xD;
&lt;p&gt;[ComVisible(true)] &#xD;
&lt;p&gt;public class MathClass &#xD;
&lt;p&gt;{ &#xD;
&lt;p&gt;public double GetPI() &#xD;
&lt;p&gt;{ &#xD;
&lt;p&gt;return Math.PI; &#xD;
&lt;p&gt;} &#xD;
&lt;p&gt;} &#xD;
&lt;p&gt;然后在页面中嵌入MathClass,增加一个按钮，点击显示PI值 &#xD;
&lt;p&gt;&amp;lt;object id="MathClass" classid="http:bin/WindowsFormsControlLibrary.dll#WindowsFormsControlLibrary.MathClass" height="0" width="0" &amp;gt;&amp;lt;/object&amp;gt; &#xD;
&lt;p&gt;&amp;lt;input id="Button2" type="button" onclick="GetPi();" value="Call MathClass" /&amp;gt; &#xD;
&lt;p&gt;&amp;lt;script type="text/javascript"&amp;gt; &#xD;
&lt;p&gt;function GetPi() &#xD;
&lt;p&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; &#xD;
&lt;p&gt;var winCtrl = document.getElementById("MathClass");&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#xD;
&lt;p&gt;var pi=winCtrl.GetPI(); &#xD;
&lt;p&gt;alert(pi);&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; &#xD;
&lt;p&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#xD;
&lt;p&gt;&amp;lt;/script&amp;gt; &#xD;
&lt;p&gt;重编译项目，点击Call MathClass按钮效果如下： &#xD;
&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155048126.png"&gt;&lt;img title="wps_clip_image-5107" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="214" alt="wps_clip_image-5107" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155109310.png" width="244" border="0" /&gt;&lt;/a&gt; &#xD;
&lt;p&gt;&lt;strong&gt;开发与调试技巧&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;如果.Net控件内部出现异常的话，比如没有提供默认的无参构造函数，该控件也会显示不出来，而且在浏览器中看不到任何提示，因此在开发过程中为了方便调试，我们可以再创建一个Windows项目，把控件拖到一个WinForm中进行调试。 &#xD;
&lt;p&gt;为了让开发更加便利，我们可以在控件上增加一个标签显示当然程序集的版本号，并且让每次编译的Build号加1，这样我们可以通过版本号来判断加载的是不是最新的dll。如果嫌每次编译都要手动修改Build号麻烦的话，可以使用一个VS插件http://www.codeproject.com/KB/macros/versioningcontrolledbuild.aspx &#xD;
&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155151300.png"&gt;&lt;img title="wps_clip_image-15368" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="214" alt="wps_clip_image-15368" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180155185708.png" width="244" border="0" /&gt;&lt;/a&gt; &#xD;
&lt;p&gt;完整源码&#xD;
&lt;p&gt;&lt;a href="http://files.cnblogs.com/xiaomin/DotNetHostWebSite3.rar"&gt;/Files/xiaomin/DotNetHostWebSite3.rar&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2180078.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180078.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180070.html</id><title type="text">浏览器内嵌.NET对象技术架构（一）</title><summary type="text">1. 概述 对于许多复杂的应用，使用纯Html+javascript的方式难以满足要求。Html5正致力改善这一局面，在在这之前，大家普遍使用ActiveX技术。ActiveX的核心技术依然是COM，浏览器根据Object标签动态创建COM对象并与之交互。我们可以使用VC++与VB开发ActiveX组件。而在.NET时代，我们可以使用.NET支持的语言，利用.NET的优势，更加高效的开发出富客户应用。 如果我们现在要设计一个新的富客户端项目，SilverLight应该是首选方案。但是许多已有的项目不可能马上迁移或者根本不打算迁移到SliverLight。因此，探讨该技术架构依然有现实意义。 本</summary><published>2011-09-17T17:42:00Z</published><updated>2011-09-17T17:42:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180070.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180070.html"/><content type="html">&lt;p&gt;&lt;strong&gt;1. 概述&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;对于许多复杂的应用，使用纯Html+javascript的方式难以满足要求。Html5正致力改善这一局面，在在这之前，大家普遍使用ActiveX技术。ActiveX的核心技术依然是COM，浏览器根据Object标签动态创建COM对象并与之交互。我们可以使用VC++与VB开发ActiveX组件。而在.NET时代，我们可以使用.NET支持的语言，利用.NET的优势，更加高效的开发出富客户应用。 &lt;/p&gt;&lt;p&gt;如果我们现在要设计一个新的富客户端项目，SilverLight应该是首选方案。但是许多已有的项目不可能马上迁移或者根本不打算迁移到SliverLight。因此，探讨该技术架构依然有现实意义。 &lt;/p&gt;&lt;p&gt;本文试图从最简单的例子开始，一步步涵盖所有跟浏览器内嵌.NET对象技术的各方面细节，包括一些有用的工具，并在每一节最后给出完整源代码。 &lt;/p&gt;&lt;p&gt;&lt;strong&gt;2. Hello IE&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;我们从一个最简单的例子开始：让IE浏览器显示一个WinForm的控件，控件中显示一行文字&amp;#8220;Hello IE&amp;#8221;. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;创建控件库&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;首先，创建一个WebApplication与一个Windows控件库。 &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180148554769.png"&gt;&lt;img title="wps_clip_image-14372" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="144" alt="wps_clip_image-14372" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180148567344.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;在Windows控件库中增加一个UserControl，取名为HelloIE，拖入一个标签控件，Text属性设为"Hello IE!". &lt;/p&gt;&lt;p&gt;&lt;strong&gt;创建宿主页面&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;为DotNetHostWebSite项目添加引用，把WindowsFormsControlLibrary引用进来。这样每次编译之后，WindowsFormsControlLibrary.dll便会复制到网站的bin目录中。 &lt;/p&gt;&lt;p&gt;然后在DotNetHostWebSite中增加一个htm页面，加入&amp;lt;object&amp;gt;标签如下： &lt;/p&gt;&lt;p&gt;&amp;lt;object id="HelloIE" classid="http:bin/WindowsControlLibrary.dll#WindowsFormsControlLibrary.HelloIE" height="100" width="300"/&amp;gt; &lt;/p&gt;&lt;p&gt;关键属性为classid，语法为： &lt;/p&gt;&lt;p&gt;classid="http:[relativePath/]&amp;lt;winControlAssemblyName&amp;gt;.dll#&amp;lt;ControlNamespace&amp;gt;.&amp;lt;ControlClassName&amp;gt;". &lt;/p&gt;&lt;p&gt;(注：请注意使用相对路径的时候，是不用写双斜杠//的。当然也可以使用绝对路径http://[absolutelyPath],但是实际工作中一般不会使用这种方式，因为开发环境、测试环境跟真实环境往往都会使用不同的url) &lt;/p&gt;&lt;p&gt;最后，我们需要在IIS上创建虚拟目录,然后编译整个项目。 &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180148576396.png"&gt;&lt;img title="wps_clip_image-14392" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="71" alt="wps_clip_image-14392" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180148576985.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;程序已经完成。使用IE浏览器浏览http://localhost/DotNetHostWebSite/HelloIE.htm。结果如下： &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180148582624.png"&gt;&lt;img title="wps_clip_image-14917" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="214" alt="wps_clip_image-14917" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149015712.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;配置IIS&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;然而有些时候该UserControl显示失败，一般是由于IIS配置与.NET安全配置的问题。由于本例子没有做任何涉及安全的操作，因此暂时不用管.NET安全配置。正常的情况下，首先IE会根据object中提供的url发送一个Get请求，把dll下载下来。 &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149049074.png"&gt;&lt;img title="wps_clip_image-16437" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="134" alt="wps_clip_image-16437" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149063766.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;在两种情况下，这个请求将失败。 &lt;/p&gt;&lt;p&gt;l 当前用户没有对该dll文件读取的权限，返回404错误。应保证用户有读取bin目录的权限。 &lt;/p&gt;&lt;p&gt;l IIS配置中执行权限设为&amp;#8220;脚本和可执行文件&amp;#8221;，将返回500错误。应改为&amp;#8220;纯脚本&amp;#8221;。 &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/20110918014907517.png"&gt;&lt;img title="wps_clip_image-4428" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="218" alt="wps_clip_image-4428" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149098174.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;另外，我们也可以用一个简单的方法来测试，在浏览器地址栏中输入dll的完整地址，回车，如果出现文件下载对话框，表示dll下载没有问题。 &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149094096.png"&gt;&lt;img title="wps_clip_image-8129" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="165" alt="wps_clip_image-8129" src="http://images.cnblogs.com/cnblogs_com/xiaomin/201109/201109180149108339.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;至此，我们完成了一个最简单的示例。 &lt;/p&gt;&lt;p&gt;&lt;strong&gt;参考&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;http://www.cnblogs.com/zgff008/archive/2008/10/28/1321357.html&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;span style="font-size: 14.4px; "&gt;&lt;p&gt;&lt;strong&gt;完整源码&lt;/strong&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://files.cnblogs.com/xiaomin/DotNetHostWebSite1.rar"&gt;/Files/xiaomin/DotNetHostWebSite1.rar&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2180070.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/09/18/2180070.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/08/26/2154026.html</id><title type="text">从System.Web.UI.Control类中学习提高程序性能的3个技巧</title><summary type="text">技巧1.使用EventHanlderList代替EventHandler 以Control的Init事件为例。通常我们会简单的用一个语句来定义事件：publiceventEventHandlerInit; 然而我们看实际的代码却是：[WebSysDescription(&amp;quot;Control_OnInit&amp;quot;)]publiceventEventHandlerInit{add{this.Events.AddHandler(EventInit,value);}remove{this.Events.RemoveHandler(EventInit,value);}} Events属性就是E</summary><published>2011-08-26T03:19:00Z</published><updated>2011-08-26T03:19:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/08/26/2154026.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/08/26/2154026.html"/><content type="html">&lt;p&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&lt;strong style="font-size: 12pt"&gt;技巧1.使用EventHanlderList代替EventHandler&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;以Control的Init事件为例。通常我们会简单的用一个语句来定义事件：&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EventHandler&amp;nbsp;Init;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;然而我们看实际的代码却是：&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #000000"&gt;[WebSysDescription(&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #800000"&gt;Control_OnInit&lt;/span&gt;&lt;span style="color: #800000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;)]&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EventHandler&amp;nbsp;Init&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;add&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.Events.AddHandler(EventInit,&amp;nbsp;value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;remove&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.Events.RemoveHandler(EventInit,&amp;nbsp;value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;Events属性就是EventHandlerList类型的对象。&lt;/p&gt;&#xD;
&lt;p&gt;这样做的原因有两个：&lt;/p&gt;&#xD;
&lt;p&gt;1.第一种写法不管该事件有没有响应函数，都会创建一个相应的代理对象。假如一个类中有20个事件，将创建20个代理对象，而这20个代理对象有可能都用不上。&lt;/p&gt;&#xD;
&lt;p&gt;2.第一种写法编译器将为每一个事件生成Add与Remove方法，这两个方法是线程安全的，因此它包含了一些线程同步的代码。对于根本不需要使用多线程的程序来说，这对性能也是一种损耗。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong style="font-size: 12pt"&gt;&amp;nbsp; &amp;nbsp;技巧2.使用静态object代替string类型作为字典主键&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;/strong&gt;&lt;strong&gt;&lt;font size="3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;在上面的例子中，我们还发现另一个跟我们平常不一样的用法，就是&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.Events.AddHandler(EventInit,&amp;nbsp;value);语句中的&lt;/span&gt;EventInit属性。我们先看定义&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #0000ff"&gt;internal&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;static&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;readonly&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;object&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EventInit;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;它一个简单的object，在这里做主键来使用。我们一般使用字典的时候都习惯用字符串类型作为主键，因此我们会写成&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.Events.AddHandler(&lt;strong&gt;&amp;#8220;EventInit&amp;#8221;,&amp;nbsp;&lt;/strong&gt;value);&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;这样写会有两个缺点，第一字符串占内存多，第二容易出错。对于容易出错这一点，有必要展开讲。&lt;/p&gt;&#xD;
&lt;p&gt;首先，字符串内容不会被编译器检查，非常容易写错，不仅仅是大小写的问题，即使我们把I写成L，编译器也能通过，而有时肉眼很难分辨。当然我们可以定义成常量，但是又回到内存占用的问题上了。&lt;/p&gt;&#xD;
&lt;p&gt;第二，字符串是一个特殊的类，它的特性其实很多人不是特别了解。比如字符串的驻留，字符串的比较，字符串的哈希。如果集合类把字符串当做一般对象处理，就会出现问题。&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;如果我们使用静态object字段作为主键，则上述两个问题都不会存在。每个对象在内存中的地址都是唯一的，因此用来做主键是非常合适的。 &lt;/p&gt;&#xD;
&lt;p&gt;(ViewState使用string作为主键应该是考虑到序列化的问题)&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong style="font-size: 12pt"&gt;&amp;nbsp; &amp;nbsp;技巧3.使用BitVector代替bool类型字段&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;&#xD;
&lt;p&gt;在程序中我们经常使用bool类型的字段作为标志，比如Page是否支持视图状态，我们可以定义&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;virtual&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;bool&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EnableViewState{&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;;&amp;nbsp;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;这样，编译器会自动生成一个bool型的字段。然而我们看实际的源代码：&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;virtual&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;bool&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EnableViewState&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;!&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.flags[disableViewState];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.SetEnableViewStateInternal(value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;const&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;disableViewState&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #800080"&gt;4&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;关键在于flags对象。该对象是一个SimpleBitVector32类型。使用字典的方式存取标志位，一个SimpleBitVector32对象能保存32个标志位。相当于32个bool型字段。它内部其实也只存了一个int型的字段，但是它使用每一个位作为标志。这样相对于使用bool型字段来说，能大大节省内存。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2154026.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/08/26/2154026.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/07/29/2120703.html</id><title type="text">模态窗口尽量禁止客户端缓存</title><summary type="text">当使用js脚本打开一个模态窗口时，浏览器会使用客户端缓存。甚至当服务器端页面更新了，客户端也依然使用缓存中的页面。所以，尽量在窗口禁止客户端缓存&amp;lt;META HTTP-EQUIV=&amp;quot;pragma&amp;quot; CONTENT=&amp;quot;no-cache&amp;quot;&amp;gt; &amp;lt;META HTTP-EQUIV=&amp;quot;Cache-Control&amp;quot; CONTENT=&amp;quot;no-cache, must-revalidate&amp;quot;&amp;gt;</summary><published>2011-07-29T02:43:00Z</published><updated>2011-07-29T02:43:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/07/29/2120703.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/07/29/2120703.html"/><content type="html">&lt;p&gt;&lt;span  style="word-spacing: 0px; font: medium Simsun; text-transform: none; color: rgb(0,0,0); text-indent: 0px; white-space: normal; letter-spacing: normal; border-collapse: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"&gt;&lt;span  style="font-size: 14px; line-height: 24px; font-family: arial, 宋体, sans-serif"&gt;当使用js脚本打开一个模态窗口时，浏览器会使用客户端缓存。甚至当服务器端页面更新了，客户端也依然使用缓存中的页面。所以，尽量在窗口禁止客户端缓存&lt;/span&gt;&lt;/span&gt;&lt;span  style="word-spacing: 0px; font: medium Simsun; text-transform: none; color: rgb(0,0,0); text-indent: 0px; white-space: normal; letter-spacing: normal; border-collapse: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"&gt;&lt;span  style="font-size: 14px; line-height: 24px; font-family: arial, 宋体, sans-serif"&gt;&lt;/p&gt;&lt;pre  id="best-answer-content" style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px 0px 10px; line-height: 22px; padding-top: 0px; zoom: 1; font-family: Arial; word-wrap: break-word"&gt;&amp;lt;META HTTP-EQUIV="pragma" CONTENT="no-cache"&amp;gt; &#xD;
&amp;lt;META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"&amp;gt; &lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2120703.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/07/29/2120703.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/06/17/2084028.html</id><title type="text">Pipeline模式</title><summary type="text">1.意图 使多个对象处理同一个请求，这些对象形成一条链。每个对象拥有下一个对象的引用，该对象可以进行预处理，交给下一个对象处理，然后把处理结果进行后处理，再返回给前一对象。最终返回给客户端，形成一个“回路”。 2.典型应用。 Http Pipeline。客户端发送一个URL请求IIS接受到以后，由一系列的对象就行处理最终返回Html Stream给客户端。 HttpApplication，Page都实现了IHttpHandler接口。并且，在这个对象链条中，下一个对象是由上一个对象动态创建的。比方页面请求和WebService会使用不同的HttpHandler处理。 另外，IHttpHand.</summary><published>2011-06-17T15:52:00Z</published><updated>2011-06-17T15:52:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/06/17/2084028.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/06/17/2084028.html"/><content type="html">&lt;p&gt;1.意图&lt;/p&gt;&#xD;
&lt;p&gt;使多个对象处理同一个请求，这些对象形成一条链。每个对象拥有下一个对象的引用，该对象可以进行预处理，交给下一个对象处理，然后把处理结果进行后处理，再返回给前一对象。最终返回给客户端，形成一个&amp;#8220;回路&amp;#8221;。&lt;/p&gt;&#xD;
&lt;p&gt;2.典型应用。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Http Pipeline&lt;/u&gt;&lt;/strong&gt;。客户端发送一个URL请求IIS接受到以后，由一系列的对象就行处理最终返回Html Stream给客户端。&lt;/p&gt;&#xD;
&lt;p&gt;HttpApplication，Page都实现了IHttpHandler接口。并且，在这个对象链条中，下一个对象是由上一个对象动态创建的。比方页面请求和WebService会使用不同的HttpHandler处理。&lt;/p&gt;&#xD;
&lt;p&gt;另外，IHttpHandler其实只有一个方法，并且没有返回值。每个HttpHandler都会将处理结果放在HttpContext对象中，通过对HttpContext直接操作来做预处理与后处理。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img height="300" alt="" src="http://images.cnblogs.com/cnblogs_com/xiaomin/HttpPipline2.jpg" width="1058" border="0" longdesc="" /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Http Modules&lt;/u&gt;&lt;/strong&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;HttpApplication有许多事件。Http Module 是通过对HttpApplication注册事件响应函数来实现对同一个HttpContext的处理的。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img height="386" alt="" src="http://images.cnblogs.com/cnblogs_com/xiaomin/HttpModules.png" width="515" border="0" longdesc="" /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;AOP的拦截器&lt;/u&gt;&lt;/strong&gt;。当一个方法被调用时，先由一系列的拦截器进行预处理，然后才真正调用该方法，然后再把结果返回给拦截器进行后处理。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img height="250" alt="" src="http://images.cnblogs.com/cnblogs_com/xiaomin/CallHandlerPipeline.jpg" width="612" border="0" longdesc="" /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;每个拦截器都实现了ICallHandler接口，该接口主要方法为&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="font-weight: bold; color: #0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public&lt;/span&gt;&amp;nbsp;IMethodReturn&amp;nbsp;&lt;span style="font-weight: bold; color: #191970"&gt;Invoke&lt;/span&gt;&lt;span style="color: #006400"&gt;(&lt;/span&gt;IMethodInvocation input&lt;span style="color: #006400"&gt;,&lt;/span&gt;&amp;nbsp;GetNextHandlerDelegate getNext&lt;span style="color: #006400"&gt;)&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="color: #006400"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在该方法内调用代理getNext(input,getNext)返回后一个拦截器执行的结果。&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="color: #006400"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 在getNext代理执行前做预处理，执行后做后处理。例如LogCallHandler。&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="color: #006400"&gt;&lt;font color="#006400"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;/span&gt;&lt;span style="color: #006400"&gt;&amp;nbsp;&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;IMethodReturn&amp;nbsp;Invoke(IMethodInvocation&amp;nbsp;input,&amp;nbsp;GetNextHandlerDelegate&amp;nbsp;getNext)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&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;LogPreCall(input);//预处理&lt;br /&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;Stopwatch&amp;nbsp;sw&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Stopwatch();&lt;br /&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;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(includeCallTime)&lt;br /&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;{&lt;br /&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;sw.Start();&lt;br /&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;}&lt;br /&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;IMethodReturn&amp;nbsp;result&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;getNext().Invoke(input,&amp;nbsp;getNext);&lt;br /&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;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(includeCallTime)&lt;br /&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;{&lt;br /&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;sw.Stop();&lt;br /&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;}&lt;br /&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;LogPostCall(input,&amp;nbsp;sw,&amp;nbsp;result);//后处理&lt;br /&gt;&lt;br /&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;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;result;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="color: #006400"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#006400"&gt;与HttpPipline不同的是，这里使用对返回值IMethodReturn进行后处理，再返回IMethodReturn&amp;nbsp;给上一个处理对象。显然受HttpPipline的启发，我们也可以使用一个Context对象把处理结果都放在里面，这样也许可读性会更强一点。&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;3.结构。与职责链一样。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img height="389" alt="" src="http://images.cnblogs.com/cnblogs_com/xiaomin/ResponseLian.jpg" width="725" border="0" longdesc="" /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;4.与职责链的区别&lt;/p&gt;&#xD;
&lt;p&gt;职责链的对象最终只有一个处理请求，而Pipeline是每个对象都会处理请求。职责链就像是局域网里的广播，只有一个网卡接受信息。而Pipeline像是流水线，每个对象负责一个动作，一起协作完成一个产品。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2084028.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/06/17/2084028.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/05/30/2063022.html</id><title type="text">Radio Button为Disable的时候，会发生两个Radio Button都为Checked的情况</title><summary type="text">假如我们一个页面中有一组（2个）Radio Button，在页面初始化时写如下代码：protectedvoidPage_Load(objectsender,EventArgse){if(!this.IsPostBack){this.RadioButton1.Checked=true;this.RadioButton2.Checked=true;}} 在页面呈现时，会自动将最后一个Radio Button设为Checked，其他的为UnChecked。并且再次点提交后，Radio Button的状态会与用户输入保持一致。 然而，也有例外情况：当Radio Button为Disable的时候，会.</summary><published>2011-05-30T01:52:00Z</published><updated>2011-05-30T01:52:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/05/30/2063022.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/05/30/2063022.html"/><content type="html">&lt;p&gt;假如我们一个页面中有一组（2个）Radio Button，在页面初始化时写如下代码：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;span style="color: #0000ff; "&gt;protected&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000ff; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;nbsp;Page_Load(&lt;/span&gt;&lt;span style="color: #0000ff; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e){&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;!&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.IsPostBack)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&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: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.RadioButton1.Checked&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&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: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.RadioButton2.Checked&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;}&amp;nbsp;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;font  face="'Courier New'" size="3"&gt;&lt;span  style="font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;在页面呈现时，会自动将最后一个Radio Button设为Checked，其他的为UnChecked。并且再次点提交后，Radio Button的状态会与用户输入保持一致。&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;然而，也有例外情况：当Radio Button为Disable的时候，会发生两个Radio Button都为Checked的情况。&lt;/p&gt;&lt;div&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;protected&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;void&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;object&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;!&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.IsPostBack)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&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: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.RadioButton1.Checked&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&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: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.RadioButton2.Checked&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&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: #0000FF;"&gt;this&lt;/span&gt;&lt;span style="color: #000000;"&gt;.RadioButton1.Enabled&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;}&amp;nbsp;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;span  style="font-family: 'Courier New'; font-size: 13px; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;这种情况下提交表单，将发现，两个Radio Button都是Checked，因此我们在设Enabled=false的时候一定要先确定他的Checked值。或者在判断的时候再加上Disabled状态。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2063022.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/05/30/2063022.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/05/11/2043843.html</id><title type="text">最完美PDC2008下载链接</title><summary type="text">Mike Swanson的博客http://blogs.msdn.com/b/mswanson/archive/2008/11/03/pdc2008sessions.aspx列出了所有PDC2008的链接。但是美中不足的是，没有给出视频下载链接。 所以我在他的基础上修改了一下。现在可以直接右键-下载所有链接，下载完以后重命名-注释名作为文件名。我已经移除了不能作为文件名的字符（冒号与引号）。这个列表堪称最完美PDC2008下载链接。 另外在制作过程中发现Expresso这个工具还不错。http://www.ultrapico.com/Expresso.htm。 regexbuddy看来也不错.</summary><published>2011-05-11T15:21:00Z</published><updated>2011-05-11T15:21:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/05/11/2043843.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/05/11/2043843.html"/><content type="html">&lt;p style="text-align: left;"&gt;&lt;font  face="Arial" size="4"&gt;&lt;span  style="font-size: 16px; line-height: normal;"&gt;&lt;div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; Mike Swanson的博客http://blogs.msdn.com/b/mswanson/archive/2008/11/03/pdc2008sessions.aspx列出了所有PDC2008的链接。但是美中不足的是，没有给出视频下载链接。&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; 所以我在他的基础上修改了一下。现在可以直接右键-下载所有链接，下载完以后重命名-注释名作为文件名。我已经移除了不能作为文件名的字符（冒号与引号）。这个列表堪称最完美PDC2008下载链接。&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; 另外在制作过程中发现Expresso这个工具还不错。http://www.ultrapico.com/Expresso.htm。&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; regexbuddy看来也不错，有语法高亮显示。http://www.regexbuddy.com/index.html&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;table cellspacing="5" border="0"&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;KYN01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/KYN01.wmv"&gt;KYN01_Day 1 Morning Keynote&lt;/a&gt; (Ray Ozzie, Amitabh Srivastava, Bob Muglia, David Thompson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;KYN02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/KYN02.wmv"&gt;KYN02_Day 2 Morning Keynote&lt;/a&gt; (Ray Ozzie, Steven Sinofsky, Scott Guthrie, David Treadwell)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;KYN03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/KYN03.wmv"&gt;KYN03_Day 2 Afternoon Keynote&lt;/a&gt; (Chris Anderson, Don Box)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;KYN04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/KYN04.wmv"&gt;KYN04_Day 3 Morning Keynote&lt;/a&gt; (Rick Rashid)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB01.wmv"&gt;BB01_A Lap Around the Azure Services Platform&lt;/a&gt; (John Shewchuk)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB01.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB01.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB02.wmv"&gt;BB02_Architecture of the .NET Services&lt;/a&gt; (Dennis Pilarinos, John Shewchuk)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB02.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB03.wmv"&gt;BB03_SQL Services Under the Hood&lt;/a&gt; (Gopal Kakivaya, Tony Petrossian)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB03.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB03.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB04.wmv"&gt;BB04_Live Services A Lap around the Live Framework and Mesh Services&lt;/a&gt; (Ori Amiga)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB04.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB04.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB05 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB05.wmv"&gt;BB05_Live Services Building Applications with the Live Framework&lt;/a&gt; (Raymond Endres)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB05.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB06 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB06.wmv"&gt;BB06_Live Services Mesh Services Architecture and Concepts&lt;/a&gt; (Abolade Gbadegesin)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB06.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB06.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB07 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB07.wmv"&gt;BB07_SQL Server 2008 Developing Large Scale Web Applications and Services&lt;/a&gt; (Hala Al-Adwan, Jose Blakeley)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB07.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB08 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB08.wmv"&gt;BB08_Microsoft Dynamics CRM The Appealing Business Application&lt;/a&gt; (Humberto Lezama Guadarrama)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB08.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB09 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB09.wmv"&gt;BB09_Microsoft Office Communications Server and Exchange Platform Futures&lt;/a&gt; (Chris Mayo, David Ollason)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB09.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB09.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB10 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB10.wmv"&gt;BB10_Live Services Deep Dive on Microsoft Virtual Earth&lt;/a&gt; (Mark Brown)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB10.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/BB10.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB10.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB11 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB11.wmv"&gt;BB11_Identity Roadmap for Software + Services&lt;/a&gt; (Bertocci Vittorio, Kim Cameron)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB11.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB12 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB12.wmv"&gt;BB12_.NET Services Messaging Services - Protocols, Protection, and How We Scale&lt;/a&gt; (Clemens Vasters)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB12.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB13 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB13.wmv"&gt;BB13_SharePoint 2007 Creating SharePoint Applications with Visual Studio 2008&lt;/a&gt; (Chris Johnson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB14 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB14.wmv"&gt;BB14_SQL Services Futures&lt;/a&gt; (Patric McElroy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB14.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB14.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB15 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB15.wmv"&gt;BB15_SQL Server Database to Data Platform - Road from Server to Devices to the Cloud&lt;/a&gt; (David Campbell, Zach Skyles Owens)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB15.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB16 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB16.wmv"&gt;BB16_SQL Server 2008 Beyond Relational&lt;/a&gt; (Michael Rys)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB16.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/BB16.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB16.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB18 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB18.wmv"&gt;BB18_Dublin Hosting and Managing Workflows and Services in Windows Application Server&lt;/a&gt; (Dan Eshner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB18.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB19 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB19.wmv"&gt;BB19_Live Services Live Framework Programming Model Architecture and Insights&lt;/a&gt; (Ori Amiga)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB19.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB19.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB20 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB20.wmv"&gt;BB20_Live Services Making your Application More Social&lt;/a&gt; (Angus Logan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB20.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB22 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB22.wmv"&gt;BB22_Identity Live Identity Services Drilldown&lt;/a&gt; (Jorgen Thelin)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB22.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB22.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB23 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB23.wmv"&gt;BB23_A Lap around SQL Services&lt;/a&gt; (Soumitra Sengupta)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB23.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB23.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB24 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB24.wmv"&gt;BB24_SQL Server 2008 Deep Dive into Spatial Data&lt;/a&gt; (Isaac Kunen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB24.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB25 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB25.wmv"&gt;BB25_SQL Server 2008 New and Future T-SQL Programmability&lt;/a&gt; (Michael Wang)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB25.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB26 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB26.wmv"&gt;BB26_SQL Server 2008 Business Intelligence and Data Visualization&lt;/a&gt; (Stella Chan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB26.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB26.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB27 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB27.wmv"&gt;BB27_.NET Services Orchestrating Services and Business Processes Using Cloud-Based Workflow&lt;/a&gt; (Moustafa Ahmed)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB27.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB28 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB28.wmv"&gt;BB28_.NET Services Access Control Service Drilldown&lt;/a&gt; (Justin Smith)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB28.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB29 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB29.wmv"&gt;BB29_Identity Connecting Active Directory to Microsoft Services&lt;/a&gt; (Lynn Ayres, Tore Sundelin)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB29.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB29.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB30 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB30.wmv"&gt;BB30_Live Services Building Mesh-Enabled Web Applications Using the Live Framework&lt;/a&gt; (Arash Ghanaie-Sichanie)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB30.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB30.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB31 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB31.wmv"&gt;BB31_Live Services FeedSync and Mesh Synchronization Services&lt;/a&gt; (Steven Lees)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB31.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB31.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB32 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB32.wmv"&gt;BB32_Microsoft Dynamics CRM Building Line-of-Business Applications&lt;/a&gt; (Andrew Bybee)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB32.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB33 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB33.wmv"&gt;BB33_Dynamics Online Building Business Applications with Commerce and Payment APIs&lt;/a&gt; (Adam Wilson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB33.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB34 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB34.wmv"&gt;BB34_Live Services Notifications, Awareness, and Communications&lt;/a&gt; (John Macintyre)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB34.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB35 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB35.wmv"&gt;BB35_Live Services The Future of the Device Mesh&lt;/a&gt; (Jeremy Mazner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB35.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB35.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB36 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB36.wmv"&gt;BB36_FAST Building Search-Driven Portals with Microsoft Office SharePoint Server 2007 and Microsoft Silverlight&lt;/a&gt; (Jan Helge Sagefl�t, Stein Danielsen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB36.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB37 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB37.wmv"&gt;BB37_SQL Server 2008 Developing Secure Applications&lt;/a&gt; (Il-Sung Lee)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB37.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB38 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB38.wmv"&gt;BB38_.NET Services Connectivity, Messaging, Events, and Discovery with the Service Bus&lt;/a&gt; (Clemens Vasters)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB38.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB38.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB39 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB39.wmv"&gt;BB39_.NET Services Logging, Diagnosing, and Troubleshooting Applications Running Live in the Cloud&lt;/a&gt; (Mark Gilbert, Steve Garrity)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB40 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB40.wmv"&gt;BB40_Sync Framework Enterprise Data in the Cloud and on Devices&lt;/a&gt; (Liam Cavanagh)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB40.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB40.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB41 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB41.wmv"&gt;BB41_Live Services What I Learned Building My First Mesh Application&lt;/a&gt; (Don Gillett)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB41.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/BB41.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB42 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB42.wmv"&gt;BB42_Identity Geneva Server and Framework Overview&lt;/a&gt; (Caleb Baker, Stuart Kwan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB42.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB42.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB43 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB43.wmv"&gt;BB43_Identity Geneva Deep Dive&lt;/a&gt; (Jan Alexander)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB43.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB44 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB44.wmv"&gt;BB44_Identity Windows CardSpace Geneva Under the Hood&lt;/a&gt; (Rich Randall)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB44.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB45 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB45.wmv"&gt;BB45_Office Communications Server 2007 R2 Enabling Unified Communications&lt;/a&gt; (David Ollason, Oscar Newkerk)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB45.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB45.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB46 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB46.wmv"&gt;BB46_Exchange Web Services Managed API Unified Communications Development for Exchange&lt;/a&gt; (Jason Henderson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB46.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB46.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB47 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB47.wmv"&gt;BB47_SharePoint 2007 Advanced Asynchronous Workflow Messaging&lt;/a&gt; (Alex Malek)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB47.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB48 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB48.wmv"&gt;BB48_Microsoft Advertising Platform A Lap Around&lt;/a&gt; (Erynn Petersen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB48.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB49 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB49.wmv"&gt;BB49_Microsoft Advertising Platform A Day in the Life of a Click&lt;/a&gt; (Robert Devine)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB49.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB51 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB51.wmv"&gt;BB51_Live Services Programming Live Services Using Non-Microsoft Technologies&lt;/a&gt; (Nishant Gupta)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB51.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB52 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB52.wmv"&gt;BB52_SQL Services Tips and Tricks for High-Throughput Data-Driven Applications&lt;/a&gt; (David Robinson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB52.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB53 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB53.wmv"&gt;BB53_SharePoint Online Extending Your Service&lt;/a&gt; (Troy Hopwood)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB53.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/BB53.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB54 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB54.wmv"&gt;BB54_Designing Your Application to Scale&lt;/a&gt; (Max Feingold)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB54.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB55 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB55.wmv"&gt;BB55_.NET Services Access Control In Microsoft .NET Services&lt;/a&gt; (Justin Smith)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB55.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB56 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB56.wmv"&gt;BB56_Showcase Industry Leaders Moving to the Cloud&lt;/a&gt; (Brandon Watson, Erik Johnson, Jitendra Thethi, Larry Beck)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB56.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB57 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB57.wmv"&gt;BB57_Microsoft Dynamics AX Building Business Process into Your Application&lt;/a&gt; (Josh Honeyman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB57.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB58 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB58.wmv"&gt;BB58_Case Study Bridging On-Premises with the Cloud&lt;/a&gt; (David Shutt)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB58.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;BB59 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/BB59.wmv"&gt;BB59_Behind the Scenes How We Built a Multi-Enterprise Supply Chain Application&lt;/a&gt; (Jack Greenfield, Wade Wegner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/BB59.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES01.wmv"&gt;ES01_Developing and Deploying Your First Windows Azure Service&lt;/a&gt; (Steve Marx)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES01.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/ES01.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES02.wmv"&gt;ES02_Windows Azure Architecting &amp;amp; Managing Cloud Services&lt;/a&gt; (Yousef Khalidi)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES02.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES02.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES03.wmv"&gt;ES03_Windows Azure Cloud Service Development Best Practices&lt;/a&gt; (Sriram Krishnan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES03.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES03.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES04.wmv"&gt;ES04_Windows Azure Essential Cloud Storage Services&lt;/a&gt; (Brad Calder)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES04.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES04.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES06 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES06.wmv"&gt;ES06_Developing with Microsoft .NET and ASP.NET for Server Core&lt;/a&gt; (Andrew Mason, Ian Robinson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES06.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES07 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES07.wmv"&gt;ES07_Windows Azure Modeling Data for Efficient Access at Scale&lt;/a&gt; (Niranjan Nilakantan, Pablo Castro)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES07.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES09 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES09.wmv"&gt;ES09_Enabling Test Automation Using Windows Server 2008 Hyper-V&lt;/a&gt; (Taylor Brown)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES09.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES10 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES10.wmv"&gt;ES10_Developing Solutions for Windows Server 2008 Hyper-V Using WMI&lt;/a&gt; (Nihar Shah)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES10.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES11 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES11.wmv"&gt;ES11_Developing Connected Home Applications and Services for Windows Home Server&lt;/a&gt; (CJ Saretto, Fabian Uhse)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES11.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES12 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES12.wmv"&gt;ES12_Exposing Connected Home Services to the Internet via Windows Home Server&lt;/a&gt; (Brendan Grant, CJ Saretto)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES12.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES12.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES13 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES13.wmv"&gt;ES13_How to Develop Supercomputer Applications&lt;/a&gt; (Jeff Baxter, Sean Mortazavi)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES13.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES14 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES14.wmv"&gt;ES14_IIS 7.0 and Beyond The Microsoft Web Platform Roadmap&lt;/a&gt; (Vijay Sen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES14.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES15 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES15.wmv"&gt;ES15_Web Application Packaging and Deployment&lt;/a&gt; (Saad Ladki)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES15.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES15.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES16 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES16.wmv"&gt;ES16_A Lap Around Windows Azure&lt;/a&gt; (Manuvir Das)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES16.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES16.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES17 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES17.wmv"&gt;ES17_Windows Azure Programming in the Cloud&lt;/a&gt; (Daniel Wang, Stefan Schackow)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES17.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES19 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES19.wmv"&gt;ES19_Under the Hood Inside the Windows Azure Hosting Environment&lt;/a&gt; (Chuck Lenzmeier, Frederick Smith)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES19.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES20 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES20.wmv"&gt;ES20_Developing Applications for More Than 64 Logical Processors in Windows Server 2008 R2&lt;/a&gt; (Arie van der Hoeven)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES20.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES21 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES21.wmv"&gt;ES21_Windows 7 Presentation Virtualization Graphics Remoting ( RDP) Today and Tomorrow&lt;/a&gt; (Gaurav Daga, Nadim Abdo)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES21.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES22 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES22.wmv"&gt;ES22_Extending Terminal Services and Hyper-V VDI in Windows 7&lt;/a&gt; (Christa Anderson, Niraj Agarwala)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES22.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES23 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES23.wmv"&gt;ES23_Windows 7 Optimizing Applications for Remote File Services over the WAN&lt;/a&gt; (Mathew George)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES23.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES24 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES24.wmv"&gt;ES24_PowerShell Creating Manageable Web Services&lt;/a&gt; (Jeffrey Snover)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES24.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/ES24.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES25 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES25.wmv"&gt;ES25_Showcase Windows Azure Enables Live Meeting&lt;/a&gt; (John Shriver-Blake, Michael Conrad)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES25.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES29 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES29.wmv"&gt;ES29_Showcase Windows Azure Enables /Nsoftware and Full Armor&lt;/a&gt; (Danny Kim, Gent Hito, Steve Marx)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES29.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES30 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES30.wmv"&gt;ES30_Datacenters and Resilient Services&lt;/a&gt; (Benjamin Ravani)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES30.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES31 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES31.wmv"&gt;ES31_Showcase How HP Built their Magcloud Service on Windows Azure&lt;/a&gt; (Andrew E Fitzhugh, Steve Marx)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES31.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;ES32 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/ES32.wmv"&gt;ES32_Microsoft Application Virtualization 4.5&lt;/a&gt; (Elsie Nallipogu, John Sheehan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/ES32.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC01.wmv"&gt;PC01_Windows 7 Web Services in Native Code&lt;/a&gt; (Nikola Dudar)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC01.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC02.wmv"&gt;PC02_Windows 7 Extending Battery Life with Energy Efficient Applications&lt;/a&gt; (Pat Stemen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC02.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC03.wmv"&gt;PC03_Windows 7 Developing Multi-touch Applications&lt;/a&gt; (Anson Tsao, Reed Townsend)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC03.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC03.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC04.wmv"&gt;PC04_Windows 7 Writing Your Application to Shine on Modern Graphics Hardware&lt;/a&gt; (Anantha Kancherla)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC04.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC04.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC05 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC05.wmv"&gt;PC05_Windows 7 Unlocking the GPU with Direct3D&lt;/a&gt; (Allison Klein)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC05.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC06 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC06.wmv"&gt;PC06_Deep Dive Building an Optimized, Graphics-Intensive Application in Microsoft Silverlight&lt;/a&gt; (Seema Ramchandani)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC06.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC06.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC07 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC07.wmv"&gt;PC07_WPF Extensible BitmapEffects, Pixel Shaders, and WPF Graphics Futures&lt;/a&gt; (David Teitlebaum)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC07.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC10 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC10.wmv"&gt;PC10_Microsoft Silverlight 2 for Mobile Developing for Mobile Devices&lt;/a&gt; (Amit Chopra, Giorgio Sardo)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC10.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC10.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC11 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC11.wmv"&gt;PC11_Microsoft Silverlight Futures Building Business Focused Applications&lt;/a&gt; (Jamie Cool)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC11.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC11.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC12 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC12.wmv"&gt;PC12_Deep Dive The New Rendering Engine in Microsoft Internet Explorer 8&lt;/a&gt; (Alex Mogilevsky)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC12.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC12.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC13 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC13.wmv"&gt;PC13_Windows 7 Building Great Audio Communications Applications&lt;/a&gt; (Larry Osterman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC13.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC14 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC14.wmv"&gt;PC14_Windows 7 Scenic Ribbon The next generation user experience for presenting commands in Win32 applications.&lt;/a&gt; (Nicolas Brun)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC14.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC14.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC15 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC15.wmv"&gt;PC15_Windows 7 Benefiting from Documents and Printing Convergence&lt;/a&gt; (Adrian Ford)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC15.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC16 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC16.wmv"&gt;PC16_Windows 7 Empower users to find, visualize and organize their data with Libraries and the Explorer&lt;/a&gt; (David Washington)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC16.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC16.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC17 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC17.wmv"&gt;PC17_Developing for Microsoft Surface&lt;/a&gt; (Brad Carpenter, Robert Levy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC17.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC17.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC18 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC18.wmv"&gt;PC18_Windows 7 Introducing Direct2D and DirectWrite&lt;/a&gt; (Kam VedBrat, Leonardo Blanco)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC18.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC18.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC19 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC19.wmv"&gt;PC19_Windows 7 Designing Efficient Background Processes&lt;/a&gt; (Vikram Singh)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC19.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC19.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC20 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC20.wmv"&gt;PC20_ASP.NET 4.0 Roadmap&lt;/a&gt; (Scott Hunter)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC20.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC20.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC21 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC21.wmv"&gt;PC21_ASP.NET MVC A New Framework for Building Web Applications&lt;/a&gt; (Phil Haack)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC21.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/PC21.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC21.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC22 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC22.wmv"&gt;PC22_Windows 7 Design Principles for Windows 7&lt;/a&gt; (Samuel Moreau)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC22.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC23 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC23.wmv"&gt;PC23_Windows 7 Integrate with the Windows 7 Desktop&lt;/a&gt; (Rob Jarrett)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC23.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC24 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC24.wmv"&gt;PC24_Windows 7 Welcome to the Windows 7 Desktop&lt;/a&gt; (Chaitanya Sareen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC24.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC24.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC25 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC25.wmv"&gt;PC25_Windows 7 The Sensor and Location Platform Building Context-Aware Applications&lt;/a&gt; (Dan Polivy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC25.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC25.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC26 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC26.wmv"&gt;PC26_Microsoft Visual Studio Building Applications with MFC&lt;/a&gt; (Damien Watkins)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC26.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC26.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC27 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC27.wmv"&gt;PC27_Microsoft Silverlight, WPF and the Microsoft .NET Framework Sharing Skills and Code&lt;/a&gt; (Ian Ellison-Taylor)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC27.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC29 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC29.wmv"&gt;PC29_Microsoft Silverlight 2 Control Model&lt;/a&gt; (Karen Corby)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC29.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC30 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC30.wmv"&gt;PC30_ASP.NET Dynamic Data&lt;/a&gt; (Scott Hunter)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC30.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC30.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC31 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC31.wmv"&gt;PC31_ASP.NET and JQuery&lt;/a&gt; (Stephen Walther)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC31.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC31.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC32 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC32.wmv"&gt;PC32_ASP.NET AJAX Futures&lt;/a&gt; (Bertrand Le Roy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC32.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/PC32.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC33 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC33.wmv"&gt;PC33_Microsoft Visual Studio Easing ASP.NET Web Deployment&lt;/a&gt; (Vishal Joshi)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC33.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC33.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC34 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC34.wmv"&gt;PC34_Open XML Format SDK Developing Open XML Solutions&lt;/a&gt; (Eric White, Zeyad Rajabi)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC34.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/PC34.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC35 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC35.wmv"&gt;PC35_Silverlight Controls Roadmap&lt;/a&gt; (Shawn Burke)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC35.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC39 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC39.wmv"&gt;PC39_Inside the Olympics An Architecture and Development Review&lt;/a&gt; (Eric Schmidt, Jason Suess)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC39.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC39.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC40 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC40.wmv"&gt;PC40_SQL Server Compact Embedding in Desktop and Device Applications&lt;/a&gt; (Steve Lasker)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC40.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC41 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC41.wmv"&gt;PC41_ASP.NET Cache Extensibility&lt;/a&gt; (Stefan Schackow)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC41.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC42 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC42.wmv"&gt;PC42_Windows 7 Deploying Your Application with Windows Installer (MSI) and ClickOnce&lt;/a&gt; (Tyler Robinson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC42.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC43 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC43.wmv"&gt;PC43_Deep Dive What's New with user32 and comctl32 in Win32&lt;/a&gt; (Raymond Chen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC43.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/PC43.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC43.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC44 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC44.wmv"&gt;PC44_Windows 7 Programming Sync Providers That Work Great with Windows&lt;/a&gt; (Jason Roberts, Moe Khosravy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC44.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC45 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC45.wmv"&gt;PC45_WPF Data-centric Applications Using the DataGrid and Ribbon Controls&lt;/a&gt; (Mark Wilson-Thomas, Samantha Durante)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC45.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC45.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC46 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC46.wmv"&gt;PC46_WPF Roadmap&lt;/a&gt; (Anson Tsao, Kevin Gjerstad)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC46.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC46.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC47 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC47.wmv"&gt;PC47_Microsoft Expression Blend Tips &amp;amp; Tricks&lt;/a&gt; (Douglas Olson, Peter Blois)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC47.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC48 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC48.wmv"&gt;PC48_Research Designing the World Wide Telescope&lt;/a&gt; (Jonathan Fay)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC49 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC49.wmv"&gt;PC49_Microsoft .NET Framework CLR Futures&lt;/a&gt; (Ian Carmichael, Joshua Goodman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC49.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC49.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC50 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC50.wmv"&gt;PC50_Windows 7 Using Instrumentation and Diagnostics to Develop High Quality Software&lt;/a&gt; (Kevin Woley, Ricky Buch)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC50.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC51 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC51.wmv"&gt;PC51_Windows 7 Best Practices for Developing for Windows Standard User&lt;/a&gt; (Crispin Cowan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC51.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC52 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC52.wmv"&gt;PC52_Windows 7 Writing World-Ready Applications&lt;/a&gt; (Erik Fortune, Yaniv Feinberg)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC52.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC53 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC53.wmv"&gt;PC53_Building High Performance JScript Applications&lt;/a&gt; (Sameer Chabungbam)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC53.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC54 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC54.wmv"&gt;PC54_Mono and .NET&lt;/a&gt; (Miguel de Icaza)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC54.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC55 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC55.wmv"&gt;PC55_Oomph A Microformat Toolkit&lt;/a&gt; (Karsten Januszewski)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC55.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/PC55.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC56 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC56.wmv"&gt;PC56_Windows Embedded Quebec Developing for Devices&lt;/a&gt; (Shabnam Erfani)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC56.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC58 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC58.wmv"&gt;PC58_Framework Design Guidelines&lt;/a&gt; (Brad Abrams, Krzysztof Cwalina)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC58.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC59 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC59.wmv"&gt;PC59_Commerce Server Mojave Overview&lt;/a&gt; (Kerry Havas, Tom Schultz)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC59.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC60-V | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC60-V.wmv"&gt;PC60-V_Driving for software quality through customer feedback&lt;/a&gt; (Kevin Hill)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC61-V | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC61-V.wmv"&gt;PC61-V_Developing compatible applications for Windows&lt;/a&gt; (Uday Shivaswamy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC62-V | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC62-V.wmv"&gt;PC62-V_Hands On Analysis with Windows Performance Toolkit (General)&lt;/a&gt; (Michael Milirud, Sharif Farag)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC63-V | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC63-V.wmv"&gt;PC63-V_Best practices for signing and verifying code on Windows 7&lt;/a&gt; (Ben Nick)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/PC63-V.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;PC64-V | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/PC64-V.wmv"&gt;PC64-V_The New COM API for Accessibility and Automation in Windows 7&lt;/a&gt; (Michael Bernstein)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/PC64-V.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP01.wmv"&gt;SYMP01_Parallel Symposium Addressing the Hard Problems with Concurrency&lt;/a&gt; (David Callahan, Lynne Hill)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/SYMP01.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP02.wmv"&gt;SYMP02_Parallel Symposium Application Opportunities and Architectures&lt;/a&gt; (Jerry Bautista, John Feo)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/SYMP02.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP03.wmv"&gt;SYMP03_Parallel Symposium Future of Parallel Computing&lt;/a&gt; (David Detlefs, James Reinders, Niklas Gustafsson, Sean Nordberg, Selena Wilson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP04.wmv"&gt;SYMP04_Services Symposium Expanding Applications to the Cloud&lt;/a&gt; (Gianpaolo Carraro, Simon Guest)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/SYMP04.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP05 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP05.wmv"&gt;SYMP05_Services Symposium Enterprise Grade Cloud Applications&lt;/a&gt; (Eugenio Pace)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;SYMP06 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/SYMP06.wmv"&gt;SYMP06_Services Symposium Cloud or No Cloud, the Laws of Physics Still Apply&lt;/a&gt; (Gianpaolo Carraro)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/SYMP06.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL01 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL01.wmv"&gt;TL01_Office Business Applications Enhanced Deployment&lt;/a&gt; (Andrew Whitechapel, Saurabh Bhatia)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL01.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL02 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL02.wmv"&gt;TL02_Under the Hood Advances in the .NET Type System&lt;/a&gt; (Andrew Whitechapel, Misha Shneerson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL02.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL02.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL03 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL03.wmv"&gt;TL03_Microsoft Visual Studio Team System Software Diagnostics and Quality for Services&lt;/a&gt; (Habib Heydarian, Justin Marks)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL03.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL04 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL04.wmv"&gt;TL04_Microsoft Visual Studio Team System Team Foundation Server How We Use It at Microsoft&lt;/a&gt; (Stephanie Saad)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL04.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL06 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL06.wmv"&gt;TL06_WCF 4.0 Building WCF Services with WF in Microsoft .NET 4.0&lt;/a&gt; (Ed Pinto)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL06.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL06.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL07 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL07.wmv"&gt;TL07_Developing Applications Using Data Services&lt;/a&gt; (Mike Flasko)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL07.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL08 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL08.wmv"&gt;TL08_Offline-Enabled Data Services and Desktop Applications&lt;/a&gt; (Pablo Castro)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL08.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL09 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL09.wmv"&gt;TL09_Agile Development with Microsoft Visual Studio&lt;/a&gt; (Lori Lamkin, Sunder Raman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL09.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL10 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL10.wmv"&gt;TL10_Deep Dive Dynamic Languages in Microsoft .NET&lt;/a&gt; (Jim Hugunin)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL10.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/TL10.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL10.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL11 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL11.wmv"&gt;TL11_An Introduction to Microsoft F#&lt;/a&gt; (Luca Bolognese)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL11.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL12 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL12.wmv"&gt;TL12_Future Directions for Microsoft Visual Basic&lt;/a&gt; (Lucian Wischik, Paul Vick)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL12.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL12.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL13 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL13.wmv"&gt;TL13_Microsoft Visual C++ 10 Is the New 6&lt;/a&gt; (Boris Jabes)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL13.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL14 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL14.wmv"&gt;TL14_Project Velocity A First Look&lt;/a&gt; (Murali Krishnaprasad)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL14.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL15 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL15.wmv"&gt;TL15_Architecture without Big Design Up Front&lt;/a&gt; (Peter Provost)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL15.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL16 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL16.wmv"&gt;TL16_The Future of C#&lt;/a&gt; (Anders Hejlsberg)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL16.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL16.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL17 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL17.wmv"&gt;TL17_WF 4.0 A First Look&lt;/a&gt; (Kenny Wolf)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL17.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL17.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL18 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL18.wmv"&gt;TL18_Oslo Customizing and Extending the Visual Design Experience&lt;/a&gt; (Don Box, Florian Voss)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL18.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL19 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL19.wmv"&gt;TL19_Microsoft Visual Studio Bringing out the Best in Multicore Systems&lt;/a&gt; (Hazim Shafi)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL19.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL19.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL20 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL20.wmv"&gt;TL20_Entity Framework Futures&lt;/a&gt; (Tim Mallalieu)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL20.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL20.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL21 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL21.wmv"&gt;TL21_WF 4.0 Extending with Custom Activities&lt;/a&gt; (Matt Winkler)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL21.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL21.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL22 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL22.wmv"&gt;TL22_Concurrency Runtime Deep Dive How to Harvest Multicore Computing Resources&lt;/a&gt; (Niklas Gustafsson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL22.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL22.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL23 | TL23_A Lap around Oslo (Douglas Purdy, Vijaye Raji)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL23.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL23.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL24 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL24.wmv"&gt;TL24_Improving .NET Application Performance and Scalability&lt;/a&gt; (Ed Glas, Steve Carroll)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL24.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL24.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL25 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL25.wmv"&gt;TL25_Parallel Programming for C++ Developers in the Next Version of Microsoft Visual Studio&lt;/a&gt; (Rick Molloy)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL25.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL25.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL26 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL26.wmv"&gt;TL26_Parallel Programming for Managed Developers with the Next Version of Microsoft Visual Studio&lt;/a&gt; (Daniel Moth)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL26.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL26.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL27 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL27.wmv"&gt;TL27_Oslo The Language&lt;/a&gt; (David Langworthy, Don Box)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL27.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL27.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL28 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL28.wmv"&gt;TL28_Oslo Repository and Models&lt;/a&gt; (Chris Sells, Martin Gudgin)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL28.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL29 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL29.wmv"&gt;TL29_Live Labs Web Sandbox Securing Mash-ups, Site Extensibility, and Gadgets&lt;/a&gt; (Dragos Manolescu, Scott Isaacs)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL29.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL30 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL30.wmv"&gt;TL30_Microsoft Sync Framework Advances&lt;/a&gt; (Lev Novik)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL30.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL30.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL31 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL31.wmv"&gt;TL31_Oslo Building Textual DSLs&lt;/a&gt; (Chris Anderson, Giovanni Della-Libera)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL31.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL32 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL32.wmv"&gt;TL32_Microsoft Visual Studio Customizing and Extending the Development Environment&lt;/a&gt; (Tim Wagner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL32.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL33 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL33.wmv"&gt;TL33_Managed Extensibility Framework Overview&lt;/a&gt; (Glenn Block)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL33.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL34 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL34.wmv"&gt;TL34_Managed and Native Code Interoperability Best Practices&lt;/a&gt; (Jesse Kaplan)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL34.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL34.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL35 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL35.wmv"&gt;TL35_WCF Developing RESTful Services&lt;/a&gt; (Steve Maine)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL35.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL36 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL36.wmv"&gt;TL36_Microsoft .NET Framework Declarative Programming Using XAML&lt;/a&gt; (Daniel Roth, Rob Relyea)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL36.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL37 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL37.wmv"&gt;TL37_Microsoft Visual Studio Team System Leveraging Virtualization to Improve Code Quality with Team Lab&lt;/a&gt; (Ram Cherala)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL37.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL38 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL38.wmv"&gt;TL38_WCF Zen of Performance and Scale&lt;/a&gt; (Nicholas Allen)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL38.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL39 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL39.wmv"&gt;TL39_Coding4Fun Windows Presentation Foundation Animation, YouTube, iTunes, Twitter, and Nintendo's Wiimote&lt;/a&gt; (Brian Peek, Clint Rutkas, Dan Fernandez, Scott Hanselman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL39.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL40 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL40.wmv"&gt;TL40_Dublin and .NET Services Extending On-Premises Applications to the Cloud&lt;/a&gt; (Jacob Avital)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL40.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL42 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL42.wmv"&gt;TL42_Microsoft SQL Server 2008 Powering MSDN&lt;/a&gt; (Mark Johnston)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL42.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/TL42.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL43 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL43.wmv"&gt;TL43_Microsoft XNA Game Studio An Overview&lt;/a&gt; (Frank Savage)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL43.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL44 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL44.wmv"&gt;TL44_IronRuby The Right Language for the Right Job&lt;/a&gt; (John Lam)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL44.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL45 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL45.wmv"&gt;TL45_Microsoft Visual Studio Team System Database Edition Overview&lt;/a&gt; (Gert Drapers)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL45.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL46 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL46.wmv"&gt;TL46_Microsoft Visual C# IDE Tips and Tricks&lt;/a&gt; (Dustin Campbell)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL46.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL47 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL47.wmv"&gt;TL47_Microsoft Visual Studio Team System A Lap Around VSTS 2010&lt;/a&gt; (Cameron Skinner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL47.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL48 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL48.wmv"&gt;TL48_Microsoft Visual Studio Web Development Futures&lt;/a&gt; (Jeff King)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL48.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL49 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL49.wmv"&gt;TL49_Microsoft .NET Framework Overview and Applications for Babies&lt;/a&gt; (Scott Hanselman)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL49.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL49.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL50 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL50.wmv"&gt;TL50_Research BAM, AjaxScope, and Doloto&lt;/a&gt; (Emre Kiciman, Ethan Jackson)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL50.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL51 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL51.wmv"&gt;TL51_Research Contract Checking and Automated Test Generation with Pex&lt;/a&gt; (Mike Barnett, Nikolai Tillmann)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL51.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL51.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL52 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL52.wmv"&gt;TL52_Team Foundation Server 2010 Cool New Features&lt;/a&gt; (Brian Harry)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL52.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL52.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL54 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL54.wmv"&gt;TL54_Natural Interop with Silverlight, Office, and Python in Microsoft Visual C# and Microsoft Visual Basic&lt;/a&gt; (Alex Turner)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL54.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL55 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL55.wmv"&gt;TL55_The Concurrency and Coordination Runtime and Decentralized Software Services Toolkit&lt;/a&gt; (George Chrysanthakopoulos)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL55.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/ZIP/TL55.ZIP"&gt;Code&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL55.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL56 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL56.wmv"&gt;TL56_Project Velocity Under the Hood&lt;/a&gt; (Anil Nori)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL56.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/DOCX/TL56.docx"&gt;Proceeding&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL57 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL57.wmv"&gt;TL57_Panel The Future of Programming Languages&lt;/a&gt; (Anders Hejlsberg, Douglas Crockford, Erik Meijer, Gilad Bracha, Jeremy Siek, Wolfram Schulte)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL58 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL58.wmv"&gt;TL58_Research Concurrency Analysis Platform and Tools for Finding Concurrency Bugs&lt;/a&gt; (Madan Musuvathi, Thomas Ball)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL58.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL59 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL59.wmv"&gt;TL59_Visual Studio Debugger Tips &amp;amp; Tricks&lt;/a&gt; (John Cunningham)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL59.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL60 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL60.wmv"&gt;TL60_Improving Code Quality with Code Analysis&lt;/a&gt; (Ravs Kaur)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL60.pptx"&gt;PowerPoint&lt;/a&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td&gt;TL61 | &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL61.wmv"&gt;TL61_Panel The Future of Unit Testing&lt;/a&gt; (Euan Garden, Jim Newkirk, Nikolai Tillmann, Peter Provost)&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2043843.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/05/11/2043843.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/04/29/2032406.html</id><title type="text">在整个数据库中查找包含某关键字的所有存储过程</title><summary type="text">当我们对数据表进行修改时，比如删除某个字段。我们必须保证所有用到该字段的存储过程都必须做相应的修改。因此我们如果能用一条SQL语句来查找出所有包含该字段名称的存储过程，那将是非常方便的： --查找包含某关键字的存储过程名selectOBJECT_NAME(id),idfromsyscommentswhereidin(selectobject_id(name)fromdbo.sysobjectswherextype=&amp;#39;P&amp;#39;)andtextlike&amp;#39;%FieldName%&amp;#39;groupbyid</summary><published>2011-04-29T01:15:00Z</published><updated>2011-04-29T01:15:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/04/29/2032406.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/04/29/2032406.html"/><content type="html">&lt;p&gt;当我们对数据表进行修改时，比如删除某个字段。我们必须保证所有用到该字段的存储过程都必须做相应的修改。因此我们如果能用一条SQL语句来查找出所有包含该字段名称的存储过程，那将是非常方便的：&lt;/p&gt;&lt;p&gt;&lt;span  style="font-family: 'Courier New'; font-size: 13px; "&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;查找包含某关键字的存储过程名&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;span style="color: #0000FF;"&gt;select&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #FF00FF;"&gt;OBJECT_NAME&lt;/span&gt;&lt;span style="color: #000000;"&gt;(id),id&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;from&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;syscomments&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;where&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;id&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;select&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #FF00FF;"&gt;object_id&lt;/span&gt;&lt;span style="color: #000000;"&gt;(name)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;from&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;dbo.sysobjects&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;where&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;xtype&lt;/span&gt;&lt;span style="color: #808080;"&gt;=&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;'&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;P&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #808080;"&gt;and&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;text&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080;"&gt;like&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;'&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;%FieldName%&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family: verdana, 'courier new'; font-size: 14px; "&gt;&lt;span style="font-family: 'Courier New'; font-size: 13px; "&gt;&lt;span style="color: #0000ff; "&gt;group&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000ff; "&gt;by&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;nbsp;id&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;font  color="#0000FF" face="'Courier New'" size="3"&gt;&lt;span  style="font-size: 13px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/2032406.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/04/29/2032406.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/03/14/1984307.html</id><title type="text">SQL SERVER深入学习资料</title><summary type="text">1.微软Webcast《sql server 2000完结篇》。尽管微软Webcast出了很多关于Sql Server的系列课程，但是最为深入讲解Sql Server的还是这个课程，尽管名字是Sql Server2000，但是由于讲的全是内部机制，所以一点都不过时，绝对是深入学习Sql Server的首选。原理方面从关系引擎，存储引擎，日志与事物机制，调优方面索引、查询、过程调优都做了比较详细的介绍。2.《Microsoft SQL Server企业级平台管理实践》徐海蔚。作者是微软全球技术支持中心，数据库支持部技术主管，加入微软技术支持中心已经10年。我自己认为，这类面向实战的书比Sql .</summary><published>2011-03-14T15:11:00Z</published><updated>2011-03-14T15:11:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1984307.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1984307.html"/><content type="html">&lt;p&gt;1.微软Webcast《sql server 2000完结篇》。&lt;/p&gt;&#xD;
&lt;p&gt;尽管微软Webcast出了很多关于Sql Server的系列课程，但是最为深入讲解Sql Server的还是这个课程，尽管名字是Sql Server2000，但是由于讲的全是内部机制，所以一点都不过时，绝对是深入学习Sql Server的首选。原理方面从关系引擎，存储引擎，日志与事物机制，调优方面索引、查询、过程调优都做了比较详细的介绍。&lt;/p&gt;&#xD;
&lt;p&gt;2.《Microsoft SQL Server企业级平台管理实践》徐海蔚。作者是微软全球技术支持中心，数据库支持部技术主管，加入微软技术支持中心已经10年。我自己认为，这类面向实战的书比Sql Server的开发者写的书对我们更有价值。就像我们要学习如何把星际玩得更好，我们当然更愿意学习星际比赛的冠军而不是星际的开发者的经验。&lt;/p&gt;&#xD;
&lt;p&gt;本书我觉得可以分为两部分，前9章主要是给DBA看的,第10章后面主要是给开发者看的，但是我作为一个开发者，即使前九章不看，光看9-13章就觉得非常过瘾了。其中对锁和阻塞的讲解非常的深入细致。本来我看完《sql server 2000完结篇》以后，以为数据库的内容几乎都被讲完了，而且目前市面上的书大部分都没有跑出这个课程的范围，而本书却讲了很许多《sql server 2000完结篇》没有涉及的内容，比如一个Select语句会引发几个锁，闩的作用等等。&lt;/p&gt;&#xD;
&lt;p&gt;3.《SQL Server 2008查询性能优化》Grant Fritchey Sajal Dam。这本书最大的特点是覆盖面广，几乎把查询优化涉及到的内容都覆盖了。而且开门见山的列出了13条性能杀手。其实从开发者的角度，对于性能优化的重点知识在于锁和执行计划，作者Grant Fritchey 还有另外一本书《Dissecting SQL Server Execution Plans》是一本专门阐述执行计划的书也值得一看。另外韩国数据库大师李华植的《海量数据库解决方案》几乎就是一本执行计划的专著，对于各种表连接有着详尽的讲解，虽然主要是基于Oracle的，但是基本上是一本查询优化的大全。&lt;/p&gt;&#xD;
&lt;p&gt;4.SQL Server技术内幕系列。这当然是一个久负盛名的系列书，并且在《SQL Server 2000技术内幕》以前，都是由该产品的技术主管Ron Soukup亲自操刀。是SQL Server最权威的书籍，没有之一。《走出软件作坊》的作者也把该书作为他技术的半壁江山。但是为什么放在最后面，是因为即使是我这样喜欢刨根问底的，也被无数的技术细节所淹没。也许有人会说，那是你的项目太小。据我所知，越大的项目确实对数据库知识的要求越高，但是，这时项目会有专门的DBA甚至是微软的顾问，项目小的又确实用不上。从效率最佳的角度来看，这个书就当字典用到再查阅一下比较合适。&lt;/p&gt;&lt;p&gt;总的来说，SQL Server的书比Oracle来说少得多，尤其是DBA实战方面的像《Oracle DBA手记》这样的书还没有，不过对于开发来说，这些书已经很足够了。对于开发来说首先要解决的是死锁与超时，至于说速度慢，实在优化不了，那就换硬件嘛。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/1984307.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1984307.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/xiaomin/archive/2011/03/14/1983544.html</id><title type="text">意向锁如何提高性能</title><summary type="text">最近看《Microsoft Sql Server企业级平台管理实践》，书中提到，意向锁是用来提高所冲突监测性能的（Page277）,但是后面的解释只是一笔带过，语焉不详，后来在网上找到一篇牛新庄博士的文章《DB2和 Oracle的并发控制（锁）比较》有点豁然开朗，试用一个小例子重新阐释一遍： 假设有一个张表Student，有100万条数据，其中有三行： Name Age 张三 -11 李四 -13 王五 14 程序员A发现数据有错误，有一些学生的年龄有负数，他连接数据库，打算把所有的负数变成正数，并且希望在修改的时候，别人不可以读取数据。此时他对两行数据加了X排他锁。 程序员B发现有几个的姓.</summary><published>2011-03-14T04:17:00Z</published><updated>2011-03-14T04:17:00Z</updated><author><name>肖敏</name><uri>http://www.cnblogs.com/xiaomin/</uri></author><link rel="alternate" href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1983544.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1983544.html"/><content type="html">&lt;p&gt;最近看《Microsoft Sql  Server企业级平台管理实践》，书中提到，意向锁是用来提高所冲突监测性能的（Page277）,但是后面的解释只是一笔带过，语焉不详，后来在网上找到一篇牛新庄博士的文章《DB2和  Oracle的并发控制（锁）比较》有点豁然开朗，试用一个小例子重新阐释一遍：&lt;/p&gt; &lt;p&gt;假设有一个张表Student，有100万条数据，其中有三行：&lt;/p&gt; &lt;p&gt;Name Age &lt;/p&gt; &lt;p&gt;张三&amp;nbsp;&amp;nbsp;&amp;nbsp; -11&lt;/p&gt; &lt;p&gt;李四&amp;nbsp;&amp;nbsp;&amp;nbsp; -13&lt;/p&gt; &lt;p&gt;王五&amp;nbsp;&amp;nbsp;&amp;nbsp; 14&lt;/p&gt; &lt;p&gt;程序员A发现数据有错误，有一些学生的年龄有负数，他连接数据库，打算把所有的负数变成正数，并且希望在修改的时候，别人不可以读取数据。此时他对两行数据加了X排他锁。&lt;/p&gt; &lt;p&gt;程序员B发现有几个的姓名写错了，要修改，这时他打算给整张表加上S锁，也就是，别人可以读取数据，但是不能修改。这时数据库需要判断，这张表是否可以加S锁？如何判断呢：要看这张表中的100万行数据中有没有X锁，如果被加锁的这两行数据刚好在最后，那么要判断100万次才能得出结论：有一行加了X锁，该表不能加S锁，请等待该锁释放！显然这速度慢得多。假如有了意向锁，在A连接的时候，给行加上X锁的时候，对该表加上IX锁。B连接申请表的S锁之前，先看到该表有IX锁，就马上知道需要等待，而不需要去判断每一行的锁了。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/xiaomin/aggbug/1983544.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/xiaomin/archive/2011/03/14/1983544.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
