﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-Artech</title><link>http://www.cnblogs.com/artech/</link><description>Develop every application as an art using the most suitable technologies!</description><language>zh-cn</language><lastBuildDate>Mon, 06 Jul 2009 11:44:58 GMT</lastBuildDate><pubDate>Mon, 06 Jul 2009 11:44:58 GMT</pubDate><ttl>60</ttl><item><title>[原创] WCF技术剖析之十：调用WCF服务的客户端应该如何进行异常处理</title><link>http://www.cnblogs.com/artech/archive/2009/07/05/1517257.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sun, 05 Jul 2009 10:33:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/07/05/1517257.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1517257.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/07/05/1517257.html#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1517257.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1517257.html</trackback:ping><description><![CDATA[摘要: 在前面一片文章（<a href="http://www.cnblogs.com/artech/archive/2009/07/04/1516908.html">服务代理不能得到及时关闭会有什么后果?</a>）中，我们谈到及时关闭服务代理（Service Proxy）在一个高并发环境下的重要意义，并阐明了其根本原因。但是，是否直接调用ICommunicationObject的Close方法将服务代理关闭就万事大吉了呢？事情远不会这么简单，这其中还会涉及关于异常处理的一些操作，这就是本篇文章需要讨论的话题。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/07/05/1517257.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1517257.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/48008/" target="_blank">IBM发布全球首款开源智能编译器</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] WCF技术剖析之九：服务代理不能得到及时关闭会有什么后果?</title><link>http://www.cnblogs.com/artech/archive/2009/07/04/1516908.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sat, 04 Jul 2009 09:58:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/07/04/1516908.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1516908.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/07/04/1516908.html#Feedback</comments><slash:comments>17</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1516908.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1516908.html</trackback:ping><description><![CDATA[摘要: 我们想对WCF具有一定了解的人都会知道：在客户端通过服务调用进行服务调用过程中，服务代理应该及时关闭。但是如果服务的代理不等得到及时的关闭，到底具有怎样的后果？什么要关闭服务代理？在任何时候都需要关闭服务代理吗？是否有一些例外呢？本篇文章将会围绕着这些问题展开。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/07/04/1516908.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1516908.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/48007/" target="_blank">IE颓势不减 微软下月公布最新浏览器架构</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之八：ClientBase&amp;lt;T&amp;gt;中对ChannelFactory&amp;lt;T&amp;gt;的缓存机制</title><link>http://www.cnblogs.com/artech/archive/2009/07/03/1516573.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 03 Jul 2009 12:36:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/07/03/1516573.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1516573.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/07/03/1516573.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1516573.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1516573.html</trackback:ping><description><![CDATA[摘要: 和传统的分布式远程调用一样，WCF的服务调用借助于服务代理（Service Proxy）。而ChannelFactory<T>则是服务代理的创建者。在客户端，我们具有两种典型的服务代理创建方式，其一是通过诸如SvcUtil.exe这样的工具导入服务的元数据生成相应的服务代理（一个继承自ClientBase<T>的类型）代码和相关配置；其二是直接通过相应的终结点信息（通过代码指定或者配置）创建ChannelFactory<T>对象，并借助该对象直接进行服务代理的创建。实际上，即使通过ClientBase<T>对象进行服务调用，其内部也是调用ChannelFactory<T>创建的服务代理。整个ChannelFactory<T>的创建是一项相对复杂并且费时的工作，会涉及很多诸如反射、配置文件的读取等操作。为了提高服务调用的性能，在.NET 3.5中，WCF在ClientBase<T>中引入了ChannelFactory<T>的缓存机制。

&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/07/03/1516573.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1516573.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/48002/" target="_blank">竞争日趋激烈 微软欲借 Windows 7 扭转战局</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>拯救一个25岁身患急性白血病的女孩</title><link>http://www.cnblogs.com/artech/archive/2009/07/01/1514919.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Wed, 01 Jul 2009 11:10:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/07/01/1514919.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1514919.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/07/01/1514919.html#Feedback</comments><slash:comments>124</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1514919.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1514919.html</trackback:ping><description><![CDATA[摘要: <img src="http://images.cnblogs.com/cnblogs_com/artech/WindowsLiveWriter/25_FFD9/chenting_2.jpg" class="desc_img"/>我不知道在博客园首页发布者这样一个帖子，对于一个技术论坛性质的网站是否适合，为此在发文之前特意征得了DUDU的同意。标题所说的那个女孩名称程婷，是我一个同事的女朋友，于一个月前诊断出得了M7型急性白血病。之前，没有任何征兆，仅仅是确诊当天刷牙流血不止。医院的诊断犹如晴天霹雳，给我的同事和他们的家庭以沉重的打击。这个同事同时也是我很好的朋友，我在第一时间得到这个消息，我当时都不敢相信这是真的。每天下班都见到的一个活泼可爱的女孩，怎么突然“身患绝症”画上等号？这些本以为在韩剧中才能见到的故事，怎么可能突然降临到你我的身边？&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/07/01/1514919.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1514919.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/48001/" target="_blank">上海电信计划2012年80%用户实现100M带宽</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之七：如何实现WCF与EnterLib PIAB、Unity之间的集成</title><link>http://www.cnblogs.com/artech/archive/2009/06/29/1513317.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Mon, 29 Jun 2009 08:03:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/29/1513317.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1513317.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/29/1513317.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1513317.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1513317.html</trackback:ping><description><![CDATA[摘要: 在这之前，我写过深入介绍MS EnterLib PIAB的文章（参阅《MS Enterprise Library Policy Injection Application Block 深入解析[总结篇]》），也写过WCF与PIAB的集成（参阅：《WCF后续之旅（8）：通过WCF Extension 实现与MS Enterprise Library Policy Injection Application Block 的集成》）、WCF与Unity的集成（参阅《WCF后续之旅（7）：通过WCF Extension实现和Enterprise Library Unity Container的集成》）以及Unity与PIAB的集成（参阅《Enterprise Library深入解析与灵活应用（1）：通过Unity Extension实现和Policy Injection Application Block的集成》、《Enterprise Library深入解析与灵活应用（7）：再谈PIAB与Unity之间的集成》）。由于部分实现时基于EnterLib、Unity前一个版本，在新的版本中（Ent&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/29/1513317.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1513317.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/48000/" target="_blank">数万名网友签名抗议星际争霸2取消局域网功能</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]Enterprise Library深入解析与灵活应用（7）：再谈PIAB与Unity之间的集成</title><link>http://www.cnblogs.com/artech/archive/2009/06/28/1512885.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sun, 28 Jun 2009 15:12:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/28/1512885.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1512885.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/28/1512885.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1512885.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1512885.html</trackback:ping><description><![CDATA[摘要: 在EnteLib中，PIAB（Policy Injection Application Block）和Unity的定位是轻量级的AOP框架和IoC容器（Container）。通过PIAB，我们可以将一些业务无关的crosscutting concern定义于相应的CallHandler中，通过Attribute声明或者配置应用到承载业务逻辑的目标方法上。而通过Unity提供的IoC容器（或者DI容器），即UnityContainer，很好地实现了依赖的动态注入，从而实现了组件之间、模块之间或者服务之间的松耦合。在本篇文章中,我们将关注如何将两者有机地关联起来。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/28/1512885.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1512885.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47999/" target="_blank">Silverlight打造杰克逊纪念专题</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创-总结]WCF技术剖析系列总结篇</title><link>http://www.cnblogs.com/artech/archive/2009/06/27/1512351.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sat, 27 Jun 2009 09:04:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/27/1512351.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1512351.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/27/1512351.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1512351.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1512351.html</trackback:ping><description><![CDATA[摘要: 近半年以来，一直忙于我的第一本WCF专著《WCF技术剖析》的写作，一直无暇管理自己的Blog。到目前为止《WCF技术剖析（卷1）》的写作暂告一段落，初步预计于下个月由武汉博文视点出版。在《WCF技术剖析》写作期间，对WCF又有了新的感悟，为此以书名开始本人的第三个WCF系列。本系列的目的在于对《WCF技术剖析》的补充，会对书中的一些内容进行展开讲述，同时会囊括很多由于篇幅的原因忍痛割弃的内容。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/27/1512351.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1512351.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47998/" target="_blank">传诺基亚正在开发Android手机</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] WCF技术剖析之六：为什么在基于ASP.NET应用寄宿（Hosting）下配置的BaseAddress无效</title><link>http://www.cnblogs.com/artech/archive/2009/06/26/1511916.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 26 Jun 2009 11:33:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/26/1511916.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1511916.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/26/1511916.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1511916.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1511916.html</trackback:ping><description><![CDATA[摘要: 本篇文章来源于几天前一个朋友向我咨询的问题。问题是这样的，他说他采用ASP.NET应用程序的方式对定义的WCF服务进行寄宿（Hosting），并使用配置的方式对服务的BaseAddress进行了设置，但是在创建ServiceHost的时候却抛出InvalidOperationException，并提示相应Address Scheme的BaseAddress找不到。我意识到这可能和WCF中用于判断服务寄宿方式的逻辑有关，于是我让这位朋友将相同的服务寄宿代码和配置迁移到GUI程序或者Console应用中，看看是否正常。结果如我所想，一切正常，个人觉得这应该是WCF的一个Bug。今天撰文与大家讨论，看看大家对这个问题有何见解。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/26/1511916.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1511916.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47996/" target="_blank">7月编程语言排行榜</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之五：利用ASP.NET兼容模式创建支持会话（Session）的WCF服务</title><link>http://www.cnblogs.com/artech/archive/2009/06/25/1511165.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 25 Jun 2009 10:17:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/25/1511165.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1511165.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/25/1511165.html#Feedback</comments><slash:comments>20</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1511165.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1511165.html</trackback:ping><description><![CDATA[摘要: 在《<a href="http://www.cnblogs.com/artech/archive/2009/06/24/1510497.html" >基于IIS的WCF服务寄宿（Hosting）实现揭秘</a>》中，我们谈到在采用基于IIS（或者说基于ASP.NET）的WCF服务寄宿中，具有两种截然不同的运行模式：ASP.NET并行（Side by Side）模式和ASP.NET兼容模式。对于前者，WCF通过HttpModule实现了服务的寄宿，而对于后者，WCF的服务寄宿通过一个HttpHandler实现。只有在ASP.NET兼容模式下，我们熟悉的一些ASP.NET机制才能被我们使用，比如通过HttpContext的请求下下文；基于文件或者Url的授权；HttpModule扩展；身份模拟（Impersonation）等。

由于在ASP.NET兼容模式下，ASP.NET采用与.aspx Page完全一样的方式处理基于.svc的请求，换言之，我们就可以借助当前HttpContext的SessionState维护会话状态，进而创建一个支持会话的WCF Service。接下来，我们就通&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/25/1511165.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1511165.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47995/" target="_blank">Google Voice 上手</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之四：基于IIS的WCF服务寄宿（Hosting）实现揭秘</title><link>http://www.cnblogs.com/artech/archive/2009/06/24/1510497.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Wed, 24 Jun 2009 12:33:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/24/1510497.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1510497.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/24/1510497.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1510497.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1510497.html</trackback:ping><description><![CDATA[摘要: 通过《<a href="http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html">再谈IIS与ASP.NET管道</a>》的介绍，相信读者已经对IIS和ASP.NET的请求处理管道有了一个大致的了解，在此基础上去理解基于IIS服务寄宿的实现机制就显得相对容易了。概括地说，基于IIS的服务寄宿依赖于两个重要的对象：<b>System.ServiceModel.Activation.HttpModule</b>和<b>System. ServiceModel.Activation.HttpHandler</b>。 &nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/24/1510497.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1510497.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47994/" target="_blank">Google号召社区力量为互联网加速</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之三：如何进行基于非HTTP的IIS服务寄宿</title><link>http://www.cnblogs.com/artech/archive/2009/06/21/1507945.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sun, 21 Jun 2009 14:12:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/21/1507945.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1507945.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/21/1507945.html#Feedback</comments><slash:comments>14</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1507945.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1507945.html</trackback:ping><description><![CDATA[摘要: 在<a href="http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html" target="_blank">上面一篇文章中</a>，我们对不同版本的IIS，以及ASP.NET得的实现机制进行了详细而深入的分析。在介绍IIS7.0的时候，我们谈到，HTTP.SYS+W3SVC实现了基于HTTP的请求监听，在此基础上引入了三组网络监听器（Listener）和监听适配器（Adapter），实现了基于TCP、Named Pipes和MSMQ的网络监听。由于IIS 7提供了基于非HTTP网络协议的监听支持，那么就意味着当我们当我们通过IIS进行WCF服务寄宿（Hosting）的时候，可以采用非HTTP的通信方式。在本篇文章中，我们将通过一个简单实例介绍进行非HTTP的IIS服务寄宿，Source Code下载<a href ="http://files.cnblogs.com/artech/WasHostingDemo.zip" target="_blank">WasHostingDemo.zip</a>。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/21/1507945.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1507945.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47989/" target="_blank">Twitter无处不在 魔兽世界Twitter发送器插件发布</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之二：再谈IIS与ASP.NET管道</title><link>http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 19 Jun 2009 16:19:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1507165.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html#Feedback</comments><slash:comments>27</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1507165.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1507165.html</trackback:ping><description><![CDATA[摘要: 在2007年9月份，我曾经写了三篇详细介绍IIS架构和ASP.NET运行时管道的文章，深入介绍了IIS 5.x与IIS 6.0HTTP请求的监听与分发机制，以及ASP.NET运行时管道对HTTP请求的处理流程：
[原创]ASP.NET Process Model之一：IIS 和 ASP.NET ISAPI<br/>
[原创]ASP.NET Process Model之二：ASP.NET Http Runtime Pipeline - Part I<br/>
[原创]ASP.NET Process Model之二：ASP.NET Http Runtime Pipeline - Part II<br/>
很多人留言为何没有IIS 7的介绍。在写作《WCF深入剖析》中，为了剖析基于IIS的WCF服务寄宿（Hosting），再次对相关内容进行了研究，在这里一并与大家分享。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1507165.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47988/" target="_blank">Firefox 3.5匆忙推出漏洞多 Mozilla本月将更新</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF技术剖析之一：通过一个ASP.NET程序模拟WCF基础架构</title><link>http://www.cnblogs.com/artech/archive/2009/06/18/1506163.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 18 Jun 2009 13:24:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/06/18/1506163.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1506163.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/06/18/1506163.html#Feedback</comments><slash:comments>63</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1506163.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1506163.html</trackback:ping><description><![CDATA[摘要: 细算起来，已经有好几个月没有真正的写过文章了。近半年以来，一直忙于我的第一本WCF专著《WCF技术剖析》的写作，一直无暇管理自己的 Blog。到目前为止《WCF技术剖析（卷1）》的写作暂告一段落，初步预计于下个月由武汉博文视点出版。在《WCF技术剖析》写作期间，对WCF又有了新的感悟，为此以书名开始本人的第三个WCF系列。本系列的目的在于对《WCF技术剖析》的补充，会对书中的一些内容进行展开讲述，同时会囊括很多由于篇幅的原因忍痛割弃的内容。本系列的第一篇，我将会对WCF的基本架构作一个大致的讲解。不过，一改传统对WCF的工作流程进行平铺直叙，我将另辟蹊径，借助于我们熟悉的ASP.NET作为请求处理平台，通过一个简a单的托管程序模拟整个WCF客户端和服务端的架构。本篇文章的大部分内容节选自《WCF技术剖析（卷1）》第八章。Source Code下载：<a href="http://files.cnblogs.com/artech/Artech.WcfFrameworkSimulator.zip">Artech.WcfFrameworkSimulator.zip</a>&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/06/18/1506163.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1506163.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47987/" target="_blank">预测：Twitter最可能收购的十家公司</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>如何解决打开VS2010后没有UI界面的问题</title><link>http://www.cnblogs.com/artech/archive/2009/05/30/1492193.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sat, 30 May 2009 05:38:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/05/30/1492193.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1492193.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/05/30/1492193.html#Feedback</comments><slash:comments>22</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1492193.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1492193.html</trackback:ping><description><![CDATA[摘要: VS2010 Beta 1发布还一阵了，相信很多人已经开始尝鲜了。不知道大家有没有遇到过这样的问题：当打开VS2010的时候，出现这样一个初始化界面。但是几秒钟之后，初始化界面消失，但是VS2010的UI界面并没有出现。但是通过Task Manager查看进程列表，Devenv.exe进行却在运行。我先后遇到了两次，第一次是在Windows 7上安装VS 2010 Team Suit，我还以为是Windows 7的问题。昨天在Windows Server 2008上安装有遇到这样的问题，我以为是安装过程出现问题，于是卸掉重装，问题依然存在。在网上也没有找到任何相关信息，整整折腾了一天。后来通过通过命令行，对VS进行重新设置后解决了这个问题。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/05/30/1492193.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1492193.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47986/" target="_blank">网易澄清:与暴雪合资公司仅提供技术支持</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] 具有依赖关系的并行操作执行</title><link>http://www.cnblogs.com/artech/archive/2009/05/22/1487386.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 22 May 2009 15:30:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/05/22/1487386.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1487386.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/05/22/1487386.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1487386.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1487386.html</trackback:ping><description><![CDATA[摘要: 今天看到看到一篇MSDN文章《Parallelizing Operations With Dependencies》,作者是微软Parallel Computing Platform团队的一个开发经理。文中提供出一种用于并行执行一组具有依赖关系的操作的解决方案，这不由得想起我在一年之前写的一个具有相同的功能的组件。于是翻箱倒柜找了出来，进行了一些加工，与大家分享一下。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/05/22/1487386.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1487386.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47985/" target="_blank">杰克逊悼念仪式或成史上最大规模Web活动</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] 难道调用ThreadPool.QueueUserWorkItem（&amp;hellip;）的时候，真是必须调用Thread.Sleep（&amp;hellip;）吗？</title><link>http://www.cnblogs.com/artech/archive/2009/05/22/1486761.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 22 May 2009 01:31:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/05/22/1486761.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1486761.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/05/22/1486761.html#Feedback</comments><slash:comments>28</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1486761.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1486761.html</trackback:ping><description><![CDATA[摘要: 开门见山，下面的例子中通过调用ThreadPool.QueueUserWorkItem(WaitCallback callBack, object state)的方式实现异步调用：

List<Action> actions = new List<Action>();
//......
foreach (var action in actions)
{
    ThreadPool.QueueUserWorkItem(state => action(), null);
} 
Console.Read();
但是出现错误的输出结果......&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/05/22/1486761.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1486761.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47985/" target="_blank">杰克逊悼念仪式或成史上最大规模Web活动</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[转载] Partitioning in SQL Server 2008</title><link>http://www.cnblogs.com/artech/archive/2009/04/30/1446677.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 30 Apr 2009 00:34:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/04/30/1446677.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1446677.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/04/30/1446677.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1446677.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1446677.html</trackback:ping><description><![CDATA[摘要: Why don't you partition your table if you have millions of rows and get complaints about the degradation of performance?

This is the question I asked my friend and I was amazed to find out he, along with many people, wasn't aware of this feature of SQL Server. This feature was first made available in SQL Server 2005, and today I will discuss what partitioning is.&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/04/30/1446677.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1446677.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47984/" target="_blank">《商业周刊》:Mozilla的志愿者开发模式被复制</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[转载]Modern Web Identity: Why Your Web Applications Should Be Offering OpenID, OAuth, And Probably Facebook Connect</title><link>http://www.cnblogs.com/artech/archive/2009/04/26/1444180.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sun, 26 Apr 2009 14:18:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/04/26/1444180.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1444180.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/04/26/1444180.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1444180.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1444180.html</trackback:ping><description><![CDATA[摘要: Are you creating a new Web site and developing a user registration system that requires new visitors to sign-up and create a user ID and password? Stop now and read this. There are now more effective approaches for dealing with Web accounts which are more powerful and are better for you and your users...&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/04/26/1444180.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1444180.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47977/" target="_blank">Mono 的Virtual PC 虚拟机</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] Is this a MS EnterLib DAAB BUG or not?</title><link>http://www.cnblogs.com/artech/archive/2009/04/22/1441394.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Wed, 22 Apr 2009 07:36:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/04/22/1441394.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1441394.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/04/22/1441394.html#Feedback</comments><slash:comments>24</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1441394.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1441394.html</trackback:ping><description><![CDATA[摘要: 开门见山，使用MS Enterprise Library的DAAB（Data Access Application Block）获取数据时抛出异常。具体场景如下，通过Database对象的ExecuteReader执行两段Select语句，前一句是不合法的，后一句是正确的。为了避免第一次执行出错导致程序的终止，特意将其放到Try/Catch酷快中。两次数据库操作通过TrsanctionScope的形式纳入同一个Transaction中，具体的代码如下所示。 &nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/04/22/1441394.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1441394.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47970/" target="_blank">19岁天才黑客发布首个iPhone 3GS破解软件</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[转载]10 Must-Know Topics for Software Architects in 2009</title><link>http://www.cnblogs.com/artech/archive/2009/04/13/1434847.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Mon, 13 Apr 2009 08:13:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2009/04/13/1434847.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1434847.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2009/04/13/1434847.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1434847.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1434847.html</trackback:ping><description><![CDATA[摘要: In the last year or so, after quite a lull, the software architecture business has gotten rather exciting again. We're finally seeing major new topics emerging into the early mainstream that are potential game-changers, while at the same time a few innovations that have been hovering in the margins of the industry are starting to break out in a big way.

The big changes: The hegemony of traditional 3 and 4-tier application models, heavyweight run-time platforms, and classical service-oriented &nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2009/04/13/1434847.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1434847.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47969/" target="_blank">新浪邮箱大本营粉墨登场！Sina.cn开放注册</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF中的Binding模型]之六（完结篇）：从绑定元素认识系统预定义绑定</title><link>http://www.cnblogs.com/artech/archive/2008/12/14/1354691.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sun, 14 Dec 2008 05:16:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/12/14/1354691.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1354691.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/12/14/1354691.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1354691.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1354691.html</trackback:ping><description><![CDATA[摘要: 由于绑定对象由一系列有序的绑定元素组成，绑定元素最终决定着信道栈中信道的组成，而信道的组成最终又决定了信道栈对消息进行处理的方式和能力，所有要确定绑定的特性和能力，我们可以通过查看其绑定元素的构成来一窥究竟... ...&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/12/14/1354691.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1354691.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47968/" target="_blank">IE市场份额首次跌破60%</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF的Binding模型]之五：绑定元素（Binding Element）</title><link>http://www.cnblogs.com/artech/archive/2008/12/05/1348622.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 05 Dec 2008 09:24:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/12/05/1348622.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1348622.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/12/05/1348622.html#Feedback</comments><slash:comments>14</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1348622.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1348622.html</trackback:ping><description><![CDATA[摘要: 在上面的内容中，先后介绍了信道、信道管理器、信道监听器和信道工厂。从对象的创建来讲，信道管理器是信道的创建者。说的再具体点，客户端的信道通过信道工厂创建，服务端的信道通过信道监听器创建。但是信道工厂和信道监听器又是如果被创建出来的呢？

我们在一开始就已经说过，作为终结点三要素的绑定对象实现了所有的通信细节，并且通过创建信道栈实现了消息的传递。从这一点来说，绑定对象无疑是信道层所有通信对象的最终缔造者，所以信道工厂和信道监听器最终的创建都是靠绑定对象实现的。关于这个创建过程又和另一个重要的对象密切相关，那就是绑定元素。
&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/12/05/1348622.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1348622.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47965/" target="_blank">Google App Engine宕机6小时——云的安全在哪里？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF的Binding模型]之四：信道工厂（Channel Factory）</title><link>http://www.cnblogs.com/artech/archive/2008/12/05/1348618.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 05 Dec 2008 09:11:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/12/05/1348618.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1348618.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/12/05/1348618.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1348618.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1348618.html</trackback:ping><description><![CDATA[摘要: 由于信道管理器在客户端和服务端所起的不同作用，分为信道监听器和信道工厂。和服务端的信道监听其相比，处于客户端的信道工厂显得简单。从名称就可以看得出来，信道工厂的作用就是单纯的创建用于消息发送的信道。我们先来看看与信道工厂相关的一些接口和基类的定义。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/12/05/1348618.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1348618.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47965/" target="_blank">Google App Engine宕机6小时——云的安全在哪里？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] Enterprise Library深入解析与灵活应用（6）：自己动手创建迷你版AOP框架</title><link>http://www.cnblogs.com/artech/archive/2008/11/27/1342309.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 27 Nov 2008 07:13:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/11/27/1342309.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1342309.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/11/27/1342309.html#Feedback</comments><slash:comments>32</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1342309.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1342309.html</trackback:ping><description><![CDATA[摘要: 基于Enterprise Library PIAB的AOP框架已经在公司项目开发中得到广泛的使用，但是最近同事维护一个老的项目，使用到了Enterprise Library 2，所以PIAB是在Enterprise Library 3.0中推出的，所以不同直接使用。为了解决这个问题，我写了一个通过方法劫持（Method Interception）的原理，写了一个简易版的AOP框架。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/11/27/1342309.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1342309.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47961/" target="_blank">微软新推社交网站Windows Live Planet</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF的Binding模型]之三：信道监听器（Channel Listener）</title><link>http://www.cnblogs.com/artech/archive/2008/11/18/1335773.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Tue, 18 Nov 2008 04:00:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/11/18/1335773.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1335773.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/11/18/1335773.html#Feedback</comments><slash:comments>14</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1335773.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1335773.html</trackback:ping><description><![CDATA[摘要: 信道管理器是信道的创建者，一般来说信道栈的中每个信道对应着一个信道管理器。基于不同的消息处理的功能，将我们需要将相应的信道按照一定的顺序能组织起来构成一个信道栈，由于信道本身是由信道管理器创建的，所以信道对应的信道管理器也构成一个信道管理器栈，栈中信道管理器的顺序决定由它所创建信道的顺序。 对于WCF的信道层来说，信道管理器在服务端和客户端扮演着不同的角色，服务端的信道管理器在于监听来自客户端的请求，而客户端的信道仅仅是单纯的创建用于消息发送的信道。因此，客户端的消息管理器又称为信道监听器（Channel Listener），客户端的信道管理器则成为信道工厂（channel factory）。 

&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/11/18/1335773.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1335773.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47960/" target="_blank">火狐3.5版被指推出太匆忙：存在50多个漏洞</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]Enterprise Library深入解析与灵活应用（5）:创建一个简易版的批处理执行器，认识Enterprise Library典型的配置方式和对象创建方式</title><link>http://www.cnblogs.com/artech/archive/2008/11/17/1334957.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Mon, 17 Nov 2008 03:07:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/11/17/1334957.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1334957.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/11/17/1334957.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1334957.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1334957.html</trackback:ping><description><![CDATA[摘要: 这个工具执行一组批处理，也可以看成是一个Sequential Workflow的执行器，我把它成为Batch Job Executor。在使用Batch Job Executor过程中，通过配置可以对批处理的每个步骤、或者是Workflow的每个Activity进行自由地定义。从功能上将，这个小工具仅仅是个小玩意儿，不登大雅之堂。 不过考虑到Batch Job Executor的涉及和实现是基于Enterprise Library典型的实现方式，比如基于EL的配置和对象创建方式，对于那些希望进一步了解EL的读者，或许可以通过这个小小的例子一窥EL的设计原理。对于那些EL的设计不时很了解的读者，对于以下的内容，可能在理解上可能比较困难。最好是下载源代码，结合下面的介绍，希望会帮助了更好的理解EL。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/11/17/1334957.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1334957.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47959/" target="_blank">Google对手机搜索进行优化升级</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF中的Binding模型]之二: 信道与信道栈（Channel and Channel Stack）</title><link>http://www.cnblogs.com/artech/archive/2008/11/14/1333372.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 14 Nov 2008 03:05:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/11/14/1333372.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1333372.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/11/14/1333372.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1333372.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1333372.html</trackback:ping><description><![CDATA[摘要: WCF采用基于消息交换的通信方式，而绑定则实现了所有的通信细节。绑定通过创建信道栈实现了消息的编码与传输，以及对WS-*协议的实现。在这一节中，我们就来着重介绍WCF中的信道和信道栈。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/11/14/1333372.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1333372.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47958/" target="_blank">风声又起 Windows 7 RTM版7月13日完成</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创] 关于Type Initializer和 BeforeFieldInit的问题，看看大家能否给出正确的解释</title><link>http://www.cnblogs.com/artech/archive/2008/11/01/1324280.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Sat, 01 Nov 2008 07:57:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/11/01/1324280.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1324280.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/11/01/1324280.html#Feedback</comments><slash:comments>21</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1324280.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1324280.html</trackback:ping><description><![CDATA[摘要: 下面通过一个简单的Console Application演示Type Innitializer的执行顺序。希望大家各抒己见，对于实验的结果给出一个圆满的解释，同时希望读者从中理解到更多关于编译、关于CLR一些被我们忽略的细节。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/11/01/1324280.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1324280.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47957/" target="_blank">乔布斯和埃利森</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[转载]New Release: patterns &amp; practices App Arch Guide 2.0 Beta 1</title><link>http://www.cnblogs.com/artech/archive/2008/10/28/1321399.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Tue, 28 Oct 2008 07:28:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/10/28/1321399.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1321399.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/10/28/1321399.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1321399.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1321399.html</trackback:ping><description><![CDATA[摘要: <img src="http://blogs.msdn.com/blogfiles/jmeier/WindowsLiveWriter/NewReleasepatternspracticesAppArc.0Beta1_D893/AppArchGuidev2_thumb.gif" class="desc_img"/>[From J.D Meier’s Blog:http://blogs.msdn.com/jmeier/default.aspx] 

Today we released our patterns & practices App Arch Guide 2.0 Beta 1.  This is our guide to help solution architects and developers make the most of the Microsoft platform.  It's a distillation of many lessons learned.  It’s principle-based and pattern-oriented to provide &nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/10/28/1321399.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1321399.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47956/" target="_blank">Xbox Live将投放Silverlight广告</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创][MethodImpl(MethodImplOptions.Synchronized)]、lock(this)与lock(typeof(...))</title><link>http://www.cnblogs.com/artech/archive/2008/10/17/1313209.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 17 Oct 2008 01:16:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/10/17/1313209.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1313209.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/10/17/1313209.html#Feedback</comments><slash:comments>23</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1313209.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1313209.html</trackback:ping><description><![CDATA[摘要: 对于稍微有点经验的.NET开发人员来说，倘若被问及如何保持线程同步，我想很多人都能说好好几种。在众多的线程同步的可选方式中，加锁无疑是最为常用的。如果仅仅是基于方法级别的线程同步，使用System.Runtime.CompilerServices.MethodImplAttribute无疑是最为简洁的一种方式。MethodImplAttribute可以用于instance method，也可以用于static method。当在某个方法上标注了MethodImplAttribute，并指定MethodImplOptions.Synchronized参数，可以确保在不同线程中运行的该方式以同步的方式运行。我们几天来讨论MethodImplAttribute（MethodImplOptions.Synchronized）和lock的关系。

&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/10/17/1313209.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1313209.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47951/" target="_blank">Debian无视GNU创始人警告 接受Mono</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]Enterprise Library深入解析与灵活应用（4）：创建一个自定义Exception Handler改变ELAB的异常处理机制</title><link>http://www.cnblogs.com/artech/archive/2008/09/26/1299370.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 26 Sep 2008 02:46:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/26/1299370.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1299370.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/26/1299370.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1299370.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1299370.html</trackback:ping><description><![CDATA[摘要: 微软Enterprise Library ELAB（Exception Handling Application Block）提供了一种基于策略（Policy）的异常处理方式，在不同的环境中，比如多层架构中不同的层次中，我们可以定义不同的异常处理策略。对于ELAB来说，Exception Handling Policy = Exception Type + Exception Handler(s) ，也就是说异常处理策略规定了对于某种类型的类型需要通过那些Exception Handler去处理。从这种意义上讲，ELAB的异常处理机制是基于Exception Type的，异常的类型是我们处理异常的最小粒度。对于一个确定的异常处理策略，在不同场合抛出的同种类型的异常，都会使用相同的Exception Handler去处理。在很多情况下，这种基于异常类型级别的异常处理并不能解决我们实际异常处理的问题。我们往往需要粒度更细的异常处理机制——对于抛出的同一种类型的异常，根据异常对象具体的属性值进行相应的异常处理。
&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/26/1299370.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1299370.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47950/" target="_blank">iPhone 3GS首发日创AT&T多项纪录</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[WCF中的Binding模型]之一: Binding模型简介</title><link>http://www.cnblogs.com/artech/archive/2008/09/22/1295639.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Mon, 22 Sep 2008 00:53:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/22/1295639.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1295639.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/22/1295639.html#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1295639.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1295639.html</trackback:ping><description><![CDATA[摘要: WCF的通信是基于消息的，如果从消息交换（message exchange）的角度讲，信道层则可以看成是进行消息交换参与者之间的中介。信道层通过一个个信道组成一个连续的channel stack，该channel stack构成了一个消息流通的管道。消息的发送者通过该管道流到消息的接收者，消息的接收者对消息进行相应的处理，生成新的消息通过该管道回复给消息的发送者。本文将着重介绍WCF中的Binding模型，从该模型中，读者将会对WCF如何通过Binding创建channel stack的整个过程有一个大致的了解。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/22/1295639.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1295639.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47949/" target="_blank">Silverlight开发大赛奖金高达10000美元</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅（17）：通过tcpTracer进行消息的路由</title><link>http://www.cnblogs.com/artech/archive/2008/09/19/1294227.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Fri, 19 Sep 2008 07:56:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/19/1294227.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1294227.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/19/1294227.html#Feedback</comments><slash:comments>18</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1294227.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1294227.html</trackback:ping><description><![CDATA[摘要: 对于希望对WCF的消息交换有一个深层次了解的读者来说，tcpTracer绝对是一个不可多得好工具。我们将tcpTracer置于服务和服务代理之间，tcpTracer会帮助我们接获、显示和转发流经他的消息。 从本质上讲，tcpTracer是一个路由器。当启动的时候，我们需要设置两个端口:原端口（source port）和目的端口（destination port），然后tcpTracer就会在原端口进行网络监听。一旦请求抵达，他会截获整个请求的消息，并将整个消息显示到消息面板上。随后，tcpTracer会将该消息原封不动地转发给目的端口。在另一方面，从目的端口发送给原端口的消息，也同样被tcpTracer截获、显示和转发。 
&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/19/1294227.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1294227.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47947/" target="_blank">微软告攒机商第一案胜诉</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅(16): 消息是如何分发到Endpoint的--消息筛选(Message Filter)</title><link>http://www.cnblogs.com/artech/archive/2008/09/18/1293185.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 18 Sep 2008 03:56:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/18/1293185.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1293185.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/18/1293185.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1293185.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1293185.html</trackback:ping><description><![CDATA[摘要: 在上一篇介绍<a href="http://www.cnblogs.com/artech/archive/2008/09/18/1292198.html#1320329">逻辑地址和物理地址</a>文章中,我们介绍了终结点的ListenUriMode, 我们提到了两个特殊的对象ChannelDispatcher和ChannelListener。这两个对象在整个WCF的消息分发系统中具有重要的地位，在这节里，我们对WCF的整个消息分发过程作一个简单的介绍。 &nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/18/1293185.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1293185.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47946/" target="_blank">Mono这只猴子招惹了谁？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅(15): 逻辑地址和物理地址</title><link>http://www.cnblogs.com/artech/archive/2008/09/17/1292198.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Wed, 17 Sep 2008 01:32:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/17/1292198.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1292198.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/17/1292198.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1292198.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1292198.html</trackback:ping><description><![CDATA[摘要: 在WCF中，每个终结点都包含两个不同的地址——逻辑地址和物理地址。逻辑地址就是终结点Address属性表示的地址。至于物理地址，对于消息发送放来讲，就是消息被真正发送的目的地址；而对于消息的接收放来讲，就是监听器真正监听的地址...&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/17/1292198.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1292198.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47945/" target="_blank">Firefox 3.5本月晚些时候即首次升级</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅（14）：TCP端口共享</title><link>http://www.cnblogs.com/artech/archive/2008/09/16/1291401.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Tue, 16 Sep 2008 01:23:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/16/1291401.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1291401.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/16/1291401.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1291401.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1291401.html</trackback:ping><description><![CDATA[摘要: 在一般的网络环境中，尽可能避免网络攻击，都会通过防火墙将绝大部分的端口封掉，仅仅保留那些常用的网络服务所用的端口，或者为某一个类应用保留少量的端口。总而言之，我们不能保证每个跨防火墙通信的应用都具有一个唯一的端口，他们只能共享一个或者少量的几个端口。 无论是基于Intranet还是Internet，无论是采用何种传输协议，端口共享——让多个网络应用程序使用相同的端口进行通信，都具有重要的现实意义。 
对于采用不同的传输协议，我们有不同的解决方案，对于HTTP协议，我们可以通过IIS的寄宿方式实现端口的共享，对于TCP，.NET Framework3.0提供了一个特殊的Windows服务，Net.TCP Port Sharing Service，帮助我们轻松的实现端口的共享。我们接下来就讨论这种端口共享解决方案&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/16/1291401.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1291401.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47944/" target="_blank">Google App Engine出现故障宕机6小时</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅(13)：创建一个简单的SOAP Message拦截、转发工具-Part II</title><link>http://www.cnblogs.com/artech/archive/2008/09/02/1281755.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Tue, 02 Sep 2008 01:20:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/02/1281755.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1281755.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/02/1281755.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1281755.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1281755.html</trackback:ping><description><![CDATA[摘要: 在<a href ="http://www.cnblogs.com/artech/archive/2008/09/01/1280939.html">Part I</a> 中，我们创建了一个InterceptService，并且通过一个特殊的EndpointBehavior，ClientViaBehavior实现了message的拦截、转发功能。在本节中，我们将讨论另外一种不同的实现方式。如何说ClientViaBehavior是基于Client端的实现方式，那么我们今天讨论的是基于Service的实现方式。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/02/1281755.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1281755.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47943/" target="_blank">消息称Facebook今年营收将达5.5亿美元</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创]WCF后续之旅(13): 创建一个简单的WCF SOAP Message拦截、转发工具 - Part I</title><link>http://www.cnblogs.com/artech/archive/2008/09/01/1280939.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Mon, 01 Sep 2008 01:37:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/09/01/1280939.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1280939.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/09/01/1280939.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1280939.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1280939.html</trackback:ping><description><![CDATA[摘要: WCF是.NET平台下实现SOA的一种手段，SOA的一个重要的特征就基于Message的通信方式。从Messaging的角度讲，WCF可以看成是对Message进行发送、传递、接收、基础的工具。对于一个消息交换的过程，很多人只会关注message的最初的发送端和最终的接收端。实际上在很多情况下，在两者之间还存在很多的中间结点（Intermediary），这些中间结点在可能在实际的应用中发挥中重要的作用。比如，我们可以创建路由器（Router）进行消息的转发，甚至是Load Balance；可以创建一个消息拦截器（Interceptor）获取request或者response message，并进行Audit、Logging和Instrumentation。今天我们就我们的目光转向这些充当着中间人角色的Intermediary上面来。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/09/01/1280939.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1280939.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47937/" target="_blank">微软8月25日开始通过WSUS推送IE8</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创-总结]谈谈基于SQL Server 的Exception Handling</title><link>http://www.cnblogs.com/artech/archive/2008/08/28/1278580.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Thu, 28 Aug 2008 05:44:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/08/28/1278580.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1278580.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/08/28/1278580.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1278580.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1278580.html</trackback:ping><description><![CDATA[摘要: 对于所有的开发人员来说，Exception Handling是我们每天都要面对的事情。对于基于Source Code的Exception Handling，我想大家已经司空见惯了，但是对于Database级别的Exception Handling，就没有那么常见了。在这篇文章中，我将会介绍我对于基于Database编程中Exception Handling的一些粗浅的认识：在编写Stored Procedure时，如何抛出一个可预知的Exception，ADO.NET如何处理从Database抛出的Exception，如何保存基于Database Exception的Error Message，如何在Database和.NET Application之间进行消息的传递[注：这里的Database主要指SQL Server]。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/08/28/1278580.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1278580.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47935/" target="_blank">暴风称新旧版更换完毕 总计超4000万用户换装</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>[原创-总结] WCF后续之旅 [17篇]</title><link>http://www.cnblogs.com/artech/archive/2008/08/26/1276559.html</link><dc:creator>Artech</dc:creator><author>Artech</author><pubDate>Tue, 26 Aug 2008 04:33:00 GMT</pubDate><guid>http://www.cnblogs.com/artech/archive/2008/08/26/1276559.html</guid><wfw:comment>http://www.cnblogs.com/artech/comments/1276559.html</wfw:comment><comments>http://www.cnblogs.com/artech/archive/2008/08/26/1276559.html#Feedback</comments><slash:comments>29</slash:comments><wfw:commentRss>http://www.cnblogs.com/artech/comments/commentRss/1276559.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/artech/services/trackbacks/1276559.html</trackback:ping><description><![CDATA[摘要: 《我的WCF之旅》系列自开篇以来，得到了园子里很多朋友的厚爱，并荣登了博客园2007年度系列博文Top 10。由于工作原因，沉寂了一阵，两个月前开始WCF新的旅程。如果说《我的WCF之旅》主要是对WCF基本原理概括性介绍，而对于这个新的系列，我将和大家分享我对WCF的一些实现机制、设计原理的理解，以及我在实际的项目开发中的一些实践经验（比如在后续的一些文章中，我将介绍通过WCF Extension实现一些在真正的分布式项目开发中很有现实意义的功能）。&nbsp;&nbsp;<a href='http://www.cnblogs.com/artech/archive/2008/08/26/1276559.html'>阅读全文</a><img src ="http://www.cnblogs.com/artech/aggbug/1276559.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47934/" target="_blank">3.5版既出 Firefox面临新挑战</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item></channel></rss>