<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_用技术改变生活</title><subtitle type="text">http://jun1stfeng.com</subtitle><id>http://feed.cnblogs.com/blog/u/7144/rss</id><updated>2010-09-21T14:19:48Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/7144/rss"/><entry><id>http://www.cnblogs.com/jun1st/archive/2010/03/01/1676061.html</id><title type="text">Application之间共享Master Page</title><summary type="text">&amp;#160;  Master Page使得我们能够在不同的页面之间，共享一个页面框架。但是在如果我们需要在不同的application之间共享同一个master页面呢？在实际应用中，我们可能会碰到这样的情况。公司有一个类似与Portal这样的门户，用户首先访问这个网站，再通过链接进入各个子网站，但是Portal和子网站之间要保持风格上的一致。 但是ASP.NET 并没有提供我们一种简单的方式，来使...</summary><published>2010-03-01T13:51:00Z</published><updated>2010-03-01T13:51:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2010/03/01/1676061.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2010/03/01/1676061.html"/><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Master Page使得我们能够在不同的页面之间，共享一个页面框架。但是在如果我们需要在不同的application之间共享同一个master页面呢？在实际应用中，我们可能会碰到这样的情况。公司有一个类似与Portal这样的门户，用户首先访问这个网站，再通过链接进入各个子网站，但是Portal和子网站之间要保持风格上的一致。 &lt;/p&gt;  &lt;p&gt;但是ASP.NET 并没有提供我们一种简单的方式，来使不同的application之间能够共享master page。当有十几个程序需要共用一个master page之后，当master page有更新之后，把更新发布到所有的应用程序中去，是一件即无聊又令人头疼的事情。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;本文就介绍的是以虚拟目录的方式，共享master page&lt;/strong&gt;。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;建立主项目&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;首先建立一个名为MainApplication的项目，这个项目是Master Page所在的项目，&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/Solution.jpg"&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Solution" border="0" alt="Solution" src="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/Solution_thumb.jpg" width="227" height="267" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;在子Application中应用Main.Master&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;在ASP.NET中，我们没法引用项目之外的master page。在添加一个Web Content Form时，如果不指定一个master page, 无法完成添加。为了方便起见，我们先把这个master page添加进项目（之后可以删除)。&lt;/p&gt;  &lt;p&gt;在IIS中，建立虚拟目录，Alias可以随意取，但是Physical Path需要指向共享的master page所在的文件夹。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/Pic1.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Pic1" border="0" alt="Pic1" src="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/Pic1_thumb.jpg" width="595" height="378" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;完成之后，SubApplication中就有了masters这个虚拟目录，可供引用想要共享的master page。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/2.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2" border="0" alt="2" src="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/2_thumb.jpg" width="192" height="236" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;这时我们就可以引用masters所指向的目录中的master page。我们可以把刚刚添加的content form 的，从&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="3" border="0" alt="3" src="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/3_thumb.jpg" width="454" height="33" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;改成&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/4.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="4" border="0" alt="4" src="http://images.cnblogs.com/cnblogs_com/jun1st/WindowsLiveWriter/ApplicationMasterPage_1276F/4_thumb.jpg" width="502" height="36" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;这时就可以通过View in Browser来查看这个页面了，但是看到的就是白板，什么都没有。不过正好给我们机会，让我们可以修改位于MainApplication中的master page来测试。&lt;/p&gt;  &lt;p&gt;很简单，但是似乎挺实用，希望对大家也有所帮助&lt;/p&gt;  &lt;p&gt;Thanks&lt;/p&gt;&lt;img src="http://www.cnblogs.com/jun1st/aggbug/1676061.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/jun1st/archive/2010/03/01/1676061.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/11/04/1596293.html</id><title type="text">ASP.NET AJAX 4的Client-Side Template和DataView</title><summary type="text">作为一个从事.NET Web技术的开发人员，似乎没有什么理由可以不懂微软自己的AJAX框架，虽然它可能不太好用，或者用起来没有像jQuery这样的框架那么爽。我没有怎么用过UpdatePanel来做过复杂的东西，所以对于这个的优缺点就不予置评了。对于客户端的ASP.NET AJAX的客户端JS Library，还是有一定了解的，相比于jQuery，总觉得微软把JS搞得跟C#似的有命名空间, 接口，...</summary><published>2009-11-04T15:37:00Z</published><updated>2009-11-04T15:37:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/11/04/1596293.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/11/04/1596293.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/11/04/aspnetajax.html</id><title type="text">ASP.NET AJAX 4的Client-Side Template和DataView</title><summary type="text">作为一个从事.NET Web技术的开发人员，似乎没有什么理由可以不懂微软自己的AJAX框架，虽然它可能不太好用，或者用起来没有像jQuery这样的框架那么爽。我没有怎么用过UpdatePanel来做过复杂的东西，所以对于这个的优缺点就不予置评了。对于客户端的ASP.NET AJAX的客户端JS Library，还是有一定了解的，相比于jQuery，总觉得微软把JS搞得跟C#似的有命名空间, 接口，...</summary><published>2009-11-04T15:19:00Z</published><updated>2009-11-04T15:19:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/11/04/aspnetajax.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/11/04/aspnetajax.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/10/26/aspnetclientid.html</id><title type="text">体验ASP.NET4之ClientID</title><summary type="text">在ASP.NET中，我们赋给一个服务器端控件的ID值，并非真正这个控件在浏览器中展现时的Html的ID值，Framework会默认把父控件的ID值用”_”区分附加到自己的ID前面，因此我们在Html中看到的ID值通常是这个样子的:”ctl0_UserControl1_ctl01_Textbox1“。  这一ID的生成方式对于后台代码来说，并没有什么影响，但是却给客户端的操作带来了很多的不便。比如，...</summary><published>2009-10-26T15:17:00Z</published><updated>2009-10-26T15:17:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/10/26/aspnetclientid.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/10/26/aspnetclientid.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/10/25/aspnet_urlrouting.html</id><title type="text">体验ASP.NET 4之URL Routing</title><summary type="text">首先，URL routing其实在ASP.NET 3.5 SP1中就被引入了，但是介于之前一直没有用到，况且微软的很多关于ASP.NET 4的介绍都把这作为一新的功能，因此就把题目取为这个吧。 之前，一个典型的ASP.NET的URL通常如下                                            http://www.myexample.com/salesreport.aspx?year=2009在这个URL中的salesreport.aspx代表的是一个真实存在的物理文件，后缀.aspx在url中的存在不仅完全没有意义，而且使得这个url不是SEO-friendly的。而使用URL Routing之后，我们就可使用如下更简洁明了的地址来访问了，                                          http://www.myexample.com/salesrepot/2009</summary><published>2009-10-24T16:15:00Z</published><updated>2009-10-24T16:15:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/10/25/aspnet_urlrouting.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/10/25/aspnet_urlrouting.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/08/25/1553929.html</id><title type="text">使用Extension Methods来使IDataReader更加方便</title><summary type="text">今天在逛老赵的Blog的时候，看到了他的常用辅助方法收集一文，想到了自己之前看到的并应用在项目中的一个方法，响应老赵的号召，拿出来晒晒。  &amp;#160;  在使用DataReader读取数据时，通常会遇到数据可能为Null, 但是又需要转换为如int等其它类型的数据，因此就通常会写这样的代码：  int count = reader[&amp;quot;count&amp;quot;] == null ? 0 :...</summary><published>2009-08-25T14:09:00Z</published><updated>2009-08-25T14:09:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/08/25/1553929.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/08/25/1553929.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/07/18/WCF_Configuration_File.html</id><title type="text">Custom WCF Configuration File</title><summary type="text">在写WCF的各种Service时，通常我们都会选择通过使用App.config或者Web.config来配置我们的Service。但是，当我们的程序要在不同的环境上测试或运行的时候，而作为开发人员的你在某些环境上并没有管理的权限时，通过唯一的App.config或者Web.config来配置Service就会造成一定程度上的麻烦。本文介绍了如何将这些config信息写在自定义的文件中，并且本文侧重于使用IIS作为host方式运行的Service。</summary><published>2009-07-18T05:51:00Z</published><updated>2009-07-18T05:51:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/07/18/WCF_Configuration_File.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/07/18/WCF_Configuration_File.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/05/13/1455980.html</id><title type="text">USE HttpRuntime.Cache OVER HttpContext.Current.Cache</title><summary type="text">&amp;#160;  缓存是在ASP.NET开发中经常需要用到在技术，在使用过程中，通常会用到HttpRuntime.Cache和HttpContext.Current.Cache。而且在使用过程中，通常会觉得这两个似乎用哪一个都行，都能达到缓存数据的目的。那么这两个Cache到底有什么不同呢？在什么时候用哪一个比较好呢？这里谈谈我的一些了解和看法吧。  两者的异同  先来看看msdn的解释 HttpC...</summary><published>2009-05-13T07:51:00Z</published><updated>2009-05-13T07:51:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/05/13/1455980.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/05/13/1455980.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/04/06/1430263.html</id><title type="text">Make Asynchronous Calls from Page</title><summary type="text">&amp;#160;  对于ASP.NET pages的请求需要有HTTP handler来处理，比如Page的instance。当有一个request来请求某个.aspx页面时，ASP.NET runtime会从ASP.NET thread pool中选一个thread来处理这个request, 并且在这个请求处理完成时释放这个thread。因此，如果这个&amp;#160; request请求的页面中的某一个...</summary><published>2009-04-06T06:22:00Z</published><updated>2009-04-06T06:22:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/04/06/1430263.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/04/06/1430263.html"/></entry><entry><id>http://www.cnblogs.com/jun1st/archive/2009/04/01/1427606.html</id><title type="text">IIS and VS Embedded Local Web Server</title><summary type="text">IIS and VS Embedded Local Web Server</summary><published>2009-04-01T15:16:00Z</published><updated>2009-04-01T15:16:00Z</updated><author><name>Jun1st</name><uri>http://www.cnblogs.com/jun1st/</uri></author><link rel="alternate" href="http://www.cnblogs.com/jun1st/archive/2009/04/01/1427606.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/jun1st/archive/2009/04/01/1427606.html"/></entry></feed>
