﻿<?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>博客园-jasmineou</title><link>http://www.cnblogs.com/jasmineou/</link><description>jas</description><language>zh-cn</language><lastBuildDate>Thu, 08 Jan 2009 07:06:43 GMT</lastBuildDate><pubDate>Thu, 08 Jan 2009 07:06:43 GMT</pubDate><ttl>60</ttl><item><title>Team Foundation 使用笔记 - 部署篇</title><link>http://www.cnblogs.com/jasmineou/archive/2008/07/25/1251375.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Fri, 25 Jul 2008 08:06:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2008/07/25/1251375.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/1251375.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2008/07/25/1251375.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/1251375.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/1251375.html</trackback:ping><description><![CDATA[<p><strong>序言：</strong>一直想为这个新建立的开发团队营造一个良好的团队文化，经过长时间的观察和思考，总结出一些方法。如果要让一个游击队(习惯于敏捷开发的团队)改变他们的习惯，让他们变成正规军，除了在制度上约束之外，我认为还需要有良好的管理，所以我决定让项目管理软件先行。作为一个.net开发团队，理所当然第一个考虑的项目管理软件就是Microsoft Visual Studio 2008 Team Foundation Server（以下简称TFS）。</p>
<p>&nbsp;</p>
<p><em>经过多番试验，总括出以下TFS安装必备条件：</em></p>
<ol>
    <li>不能安装在DC（域控制器）上</li>
    <li>需要WSS3环境（不会WSS的人会比较费劲）</li>
    <li>需要SQL Server 2005，并需要安装Reporting Service、Analysis Service （安装前请装相关的数据库服务开启并设成自动，安装扫描时也会有提示）</li>
    <li>切记所有数据库组件要安装在默认实体上面，不信的可以去尝试一下...</li>
    <li>装了Frontpage server extensions的请先卸载，卸载方法有点复杂，需要手动清除metabase.xml的配置</li>
    <li>请保持8080端口畅通（暂时未找到安装在其它端口的方法） </li>
</ol>
<p>总的来说，对环境的限制比较大</p>
<p>&nbsp;</p>
<p>下面是概述安装过程和步骤，因为不想再装一次，只能靠回忆去写了，所以下面的步骤只会列出要点和注意事项，不会给出详细截图。</p>
<p>安装环境（全英文软件环境）：</p>
<ol>
    <li>Core 2 双核+2G内存的组装服务器</li>
    <li>Windows Server 2003 (sp2)</li>
    <li>.Net Framework 3.5</li>
    <li>SQL Server 2005 (sp2)</li>
    <li>Windows Sharepoint Service 3 (sp2) </li>
</ol>
<p>&nbsp;</p>
<p>安装步骤：</p>
<ol>
    <li>没安装上WSS3的朋友们请先装上，WSS3在微软的官方网站可以下载，安装过程我就不说了，大家自己找教程吧。</li>
    <li>先展示一下TFS的HTA安装界面，我装的是英文试用版(90天)<br />
    <img height="451" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs1.jpg" width="517" border="0" /><br />
    </li>
    <li>安装Windows Sharepoint Services Extensions，安装过程就没什么好说了。安装完成之后会有一个窗口弹出让你配置Sharepoint和Reporting Service的信息，但这个信息我还没有搞清楚在什么用。</li>
    <li>在WSS上面建一个Web Application，再使用TFS的模板建一个Site，我就用了Agile的模板建...在这里特别强调一下，我不讨厌CMMI.我不讨厌CMMI.我不讨厌CMMI.我不讨厌CMMI.我不讨厌CMMI<br />
    <img height="450" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs2.jpg" width="349" border="0" /><br />
    </li>
    <li>安装Team Foundation Server，在运行安装程序之前，请先建立两个windows account，名字分别是tfsservice和tfsreport。<br />
    安装开始之前，会先扫描系统环境，有一项出错也不能下一步，感叹号的警告事项可以忽略（我无视了一个警告说CPU什么什么的，大概是说不兼容吧）。安装过程之中首先会让你输入web service和reporting service的运行帐户，&nbsp;输入刚才建的那两个就行了。然后再让你输入WSS的管理中心地址和一个Site的地址，Site的地址就输入上一步建的那个就可以了（如果没装Sharepoint Services Extensions会报错的）。一切搞定之后，就愉快地出现安装进度的界面，祈祷能顺利安装完成吧。</li>
    <li>TFS装好之后，就继续安装Team Foundation Build，安装过程很简单。至于这个组件的作用我也不是十分明白，只是有一个范范的概念，大家可以参考下图：<br />
    <img height="420" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs3.gif" width="455" border="0" /><br />
    还可以参考MSDN的介绍：<a href="http://msdn.microsoft.com/zh-cn/library/ms181710(VS.80).aspx">http://msdn.microsoft.com/zh-cn/library/ms181710(VS.80).aspx</a></li>
    <li>完成以上步骤，服务器端基本装好了，然后就需要在客户端安装Team Explorer</li>
    <li>Team Explorer安装完成后请打开VS配置TFS的连接，具体配置大家可以参考MSDN这个连接：<a href="http://msdn.microsoft.com/zh-cn/library/ms181710(VS.80).aspx">http://msdn.microsoft.com/zh-cn/library/ms181710(VS.80).aspx</a><br />
    连接时请注意使用具有administraotrs角色的用户，当然，这个能在TFS里配置成员</li>
    <li>连接完成后，可以去尝试建立一个Team Project<br />
    <img height="551" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs4.jpg" width="556" border="0" /><br />
    在这过程中还会出现各种错误，请大家根据Log文件解决，我就遇到一个错误说不能写入Document and Setting的Cache文件。这步顺利通过之后，恭喜了，TFS大概已经可以正常工作了。(建立team project的同时会在Sharepoint上面建立一个project portal site)</li>
    <li>建立以后大概就可以看图像下图所示的目录：<br />
    <img height="168" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs5.jpg" width="204" border="0" /></li>
    <li>最后一步就是将各们技术人员心爱的代码加入team project的源代码管理器中了<br />
    <img height="79" alt="" src="http://www.cnblogs.com/images/cnblogs_com/jasmineou/tfs6.jpg" width="265" border="0" /> </li>
</ol>
<p><strong>注意：如果不是在域环境下使用TFS，必需在服务器装上Team Explorer来配置用户和权限。具体如何配置用户权限，我会在下一篇文章列出。</strong> </p>
<p>&nbsp;</p>
<p><strong>总结：</strong>整个安装花了我一天的时间，主要是因为对这个东西完全是一面白纸，还好我比较熟悉Sharepoint。装好之后第一感觉就是这东西特强大，第二感觉是特复杂！看来还要花一段长时间去让团队熟悉这个环境，还有我自身的项目管理思想也要提高。另外，现在MS的产品对Sharepoint的依赖特别多，例如Exchange 2007和Project Server，没搞过Sharepoint的朋友弄起来会有点吃力。如果对微软应用接触比较多而又不会Sharepoint的朋友，最好在空闲的时候好去了解一下Sharepoint，绝对不会浪费的。</p>
<p>&nbsp;</p>
<p>祈祷我有耐性去连载这个系列吧....</p>
<p>&nbsp;</p>
<p>有疑问或者有兴趣交流的朋友可以联系我email：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#111;&#117;&#46;&#106;&#97;&#115;&#109;&#105;&#110;&#101;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">ou.jasmine@gmail.com</a>，我qq和msn都有用，大家可以留下联系方式，我会主动联系的。</p>
<img src ="http://www.cnblogs.com/jasmineou/aggbug/1251375.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44370/" target="_blank">MySpace推出应用小工具 电视也可访问社交网络</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>部署Exchange Server 2003的注意事项</title><link>http://www.cnblogs.com/jasmineou/archive/2008/05/06/1184641.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Tue, 06 May 2008 02:14:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2008/05/06/1184641.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/1184641.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2008/05/06/1184641.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/1184641.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/1184641.html</trackback:ping><description><![CDATA[<p>前两个星期答应帮朋友公司的服务器装个Exchange Server 2003，结果足足被这个东西折腾了两个星期。因为自己有个项目还有几个东西在Running，所以每天只能抽出一点时间搞，并且第一次装Exchange...以前都是用winmail或者MD的，所以搞起一特别不习惯，还查了不少资料...不过总结下来都学到不少东西。</p>
<p>归纳有以下几点要注意的地方：
<p>
<ol>
    <li>Exchange Server 2007只支持64位系统，如你发现服务器的CPU支持64位，并有重装成64位系统的打算，请检查你的硬盘Raid有没有支持64位的驱动，我就是把他们的服务器装成64系统发现Raid没有64位的支持驱动...又得重装回32位，乖乖地装上Exchange 2003，感觉自己相当白痴。</li>
    <li>exchange和ad环境是高度集成的，如果ad配置得不好或有错误，就不用想继续装了。而对ad不是十分熟悉的高手，基本很难修复ad的错误，微软的东西大家都知道，装的时候没装好，就别谈去修复了...我是深被sharepoint感染。我就是因为ad没配置好，所以经历了第二次的重装...朋友的公司好远啊，谁保贴我车费...</li>
    <li>装好之后，在启动POP和SMTP协议的时候如果发现有错误，请查一下服务器的110和25端口否被占用</li>
    <li>他们是通过路由器做简单NAT转换将外网IP和端口映射到服务器上面的，所以要确保路由器的防火墙和服务器的防火墙端口是开着的</li>
    <li>要让Exchange能在外网收发邮件，最好注册个域名(花生壳就最好不要了啊..现在域名便宜)，作好A记录和MX记录，不懂什么是MX最好上网查查</li>
    <li>收件人策略和SMTP的匿名要设置好，不然会收不到外网邮件...天啊，就是这个东西折腾了我好几天</li>
    <li>OWA其实没想象中的复杂..按照网上的教程一步一步的配置就好了...</li>
    <li>重装Exchange2003一定要重装IIS和清理注册表与AD的残留信息</li>
    <li>Exchange和Outlook不能装在同一台机上，不然那就是自讨苦吃</li>
</ol>
<p>还好最后朋友还是给我报销了车费，再给了点慰问金..哈哈</p>
<img src ="http://www.cnblogs.com/jasmineou/aggbug/1184641.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44369/" target="_blank">Borland前CEO出任VMware首席运营官</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>关于Sharepoint及Office定位的个人见解</title><link>http://www.cnblogs.com/jasmineou/archive/2008/02/20/1074957.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Wed, 20 Feb 2008 06:11:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2008/02/20/1074957.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/1074957.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2008/02/20/1074957.html#Feedback</comments><slash:comments>23</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/1074957.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/1074957.html</trackback:ping><description><![CDATA[以前一直对Sharepoint这个东西没什么好感，觉得是一个凑合着用的东西，当然了，这和当时我的处境有一定的关系。<br />
因为抵触情绪日渐增加，所以最后决定离别Sharepoint这个破东西。至今应该有一段时间了，最近因为项目的关系，在研究WWF，在这之间，又让我忽然想起了Sharepoin，这时才恍然大悟，Sharepoint的定位在那里，还有MS的意图。<br />
我先归纳出了下面几点：<br />
<ul>
    <li>在VS2008里，不容易发现在工作流的项目里能见到Sharepoint的相关东西；
    <li>MS对WWF的定位是一个平台，并不是一个产品，要成为一个产品，还要进行很多的开发；
    <li>Sharepoint2007被命名为MS Office Sharepoint System2007；
    <li>Sharepoint3加入了WWF；
    <li>在Sharepoint3里，无论是List还是doc Library都很能够反映出一个流程；
    <li>Live计划在很久之前已经公布了包含office的组件。 </li>
</ul>
<p>我从以上几点得出了一些总结：<br />
Sharepoint在下一个版本可能会作为MS的工作流产品发售；<br />
WWF和.net平台将会成为实现Office系统的基础；<br />
Office System得到了补完(流程上面)；<br />
因为Office的补完，MS能够更顺利的利用Sharepoint和SilverLight的技术实现Office Live计划。<br />
总结：Sharepoint这个东西是Office流程的核心，决不是什么用来快速开发网站的东西。（强调一下，不是我这样认为，是有其他人这样认为）<br />
<br />
以上纯属个人看法</p>
<img src ="http://www.cnblogs.com/jasmineou/aggbug/1074957.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44368/" target="_blank">中国计算机报：找寻IT产业的耐寒基因</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Sharepoint3 - 制作一个最简单的MasterPage模板</title><link>http://www.cnblogs.com/jasmineou/archive/2007/11/01/945883.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Thu, 01 Nov 2007 08:33:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2007/11/01/945883.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/945883.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2007/11/01/945883.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/945883.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/945883.html</trackback:ping><description><![CDATA[摘要: 这半年时间都在忙公司的MOSS2007(Sharepoint3)的项目，尽管我对Sharepoint这个东西没什么好感，但在这半年多的开发工作里，还是总结出了一点经验和技巧，现在分享出来希望能给刚学Sharepoint3的新人有点帮助。<br>在MSDN上有一篇文章也是说如何制作一个最简单的Masterpage，但很不幸的告诉大家，那个文章所写的Masterpage是错误的，在某些特定的页面会抛Error，所以我就花了点时间自己重新整理一个。&nbsp;&nbsp;<a href='http://www.cnblogs.com/jasmineou/archive/2007/11/01/945883.html'>阅读全文</a><img src ="http://www.cnblogs.com/jasmineou/aggbug/945883.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44367/" target="_blank">SNS画地为牢：霸王条款梗住了谁</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Gof创建型设计模式-总结</title><link>http://www.cnblogs.com/jasmineou/archive/2007/10/31/944594.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Wed, 31 Oct 2007 09:11:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2007/10/31/944594.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/944594.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2007/10/31/944594.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/944594.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/944594.html</trackback:ping><description><![CDATA[摘要: 设计模式我相信已经有很多达人写过文章了，我也不详细一个一个的写，现在写的文章只是为自己的学习作一个总结和希望对这个有经验的达人能一起交流一下，还有希望能给初学者一个感性的认识。<br>我归纳了三个名词，这三个名词基本上贯穿整个设计模式：变化、耦合、依赖。从这三个词引伸出的理念就是：...&nbsp;&nbsp;<a href='http://www.cnblogs.com/jasmineou/archive/2007/10/31/944594.html'>阅读全文</a><img src ="http://www.cnblogs.com/jasmineou/aggbug/944594.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44366/" target="_blank">方兴东：不再做任何公司CEO</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>ajax.net中与server控件的交互使用（二）（asp.net2.0）</title><link>http://www.cnblogs.com/jasmineou/archive/2006/01/25/323081.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Wed, 25 Jan 2006 03:46:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2006/01/25/323081.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/323081.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2006/01/25/323081.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/323081.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/323081.html</trackback:ping><description><![CDATA[三个月之前，我写了一篇关于ajax.net的post，大家看完之后反响挺大的。于是我一直想再深入研究一下，看看能不能作一些改进，但正在这时候，我的感情生活发生了些很悲惨的事...于是一直无心恋战。三个月后的现在，我重新拿起久久没碰过的vs.net，开始重新投入工作和学习。其实我这个也不算是什么研究，我对ajax.net框架的了解和ajax的原理只是很片面，只是我想到别人没有想的东西罢了，希望大家以后多多交流，希望我这篇post对大家有帮助。<BR>注：这次用的是asp.net2.0，控件是GridView，还在用asp.net1.1的朋友不好意思了。而这次使用的ajax.net框架也有点变动，用了AjaxPro for .net2.0（其实也一样）。<BR><BR>这次的代码我就不详尽啦，因为实在还是比较多的。关于ajax.net的设置可以参照这篇文章<A class=postTitle2 id=viewpost1_TitleUrl href="/archive/2005/09/26/244312.html">ajax.net中与server控件的交互使用（一）</A>，还要请大家注意右上角的Loading字样...loading的时候就不要乱按了），源文件就到这里下载<A href="http://www.cnblogs.com/Files/jasmineou/AjaxTestPrj2.0.rar">http://www.cnblogs.com/Files/jasmineou/AjaxTestPrj2.0.rar</A><BR><BR>我解析下具体思想，其实就是将GridView放到一个UC里面，然后将UC的代码分离去类库里，然后页面的ajax向服务器要UC生成出来的html，然后再用javascript写到页面里....~其实这个只是单单用ajax实现没刷新罢了，在性能方面并没有太多的提高。高手可能会笑我用这些实质上不算是用上ajax....呵呵~这个我承认。<BR><BR>PS：有任何疑问可以加我的QQ：50446177，验证信息写cnblogs with ajax <img src ="http://www.cnblogs.com/jasmineou/aggbug/323081.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44365/" target="_blank">Google官方文件证实裁减大量合同工</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>ajax.net中与server控件的交互使用（一）</title><link>http://www.cnblogs.com/jasmineou/archive/2005/09/26/244312.html</link><dc:creator>jasmineou</dc:creator><author>jasmineou</author><pubDate>Mon, 26 Sep 2005 07:13:00 GMT</pubDate><guid>http://www.cnblogs.com/jasmineou/archive/2005/09/26/244312.html</guid><wfw:comment>http://www.cnblogs.com/jasmineou/comments/244312.html</wfw:comment><comments>http://www.cnblogs.com/jasmineou/archive/2005/09/26/244312.html#Feedback</comments><slash:comments>54</slash:comments><wfw:commentRss>http://www.cnblogs.com/jasmineou/comments/commentRss/244312.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/jasmineou/services/trackbacks/244312.html</trackback:ping><description><![CDATA[<P></P>
<P>前两天在网上下了个ajax组件体验了一下，感觉很不错。但后来开始想怎样能让它跟server控件交互呢，例如我上输出一个列表，就只有用js一条一条html的输出吗？不！！现在我说说怎样与 datagrid交互。<BR>注：ajax.net的组件可以到此网下载，我用的是for .net 1.1版本的。<A href="http://ajax.schwarz-interactive.de/"><FONT color=#1d58d1>http://ajax.schwarz-interactive.de/</FONT></A><BR><BR>1. 在引用中添加引用Ajax.dll。（这个很废话）<BR><BR>2.在web.config中建立HttpHandler（这个当然是在system.web串里的）<BR></P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">httpHandlers</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">add&nbsp;</SPAN><SPAN style="COLOR: #ff0000">verb</SPAN><SPAN style="COLOR: #0000ff">="POST,GET"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;path</SPAN><SPAN style="COLOR: #0000ff">="ajax/*.ashx"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;type</SPAN><SPAN style="COLOR: #0000ff">="Ajax.PageHandlerFactory,&nbsp;Ajax"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">/&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top></SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">httpHandlers</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;</SPAN></DIV><BR>3.在Global的Application_Start里加上个设置<BR>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">protected</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN style="COLOR: #000000">&nbsp;Application_Start(Object&nbsp;sender,&nbsp;EventArgs&nbsp;e)<BR><IMG id=Codehighlighter1_65_107_Open_Image onclick="this.style.display='none'; Codehighlighter1_65_107_Open_Text.style.display='none'; Codehighlighter1_65_107_Closed_Image.style.display='inline'; Codehighlighter1_65_107_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_65_107_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_65_107_Closed_Text.style.display='none'; Codehighlighter1_65_107_Open_Image.style.display='inline'; Codehighlighter1_65_107_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_65_107_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ajax.Utility.HandlerPath&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">ajax</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">;<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV><BR>4.新建一个类DemoMethods，这个类里面提供了更新数据库和输出列表的方法。其实主要思想就是获得控件运行后生成的html，然后输出。 
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><SPAN style="COLOR: #008080">&nbsp;1</SPAN><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Ajax.AjaxMethod]<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;2</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;AddAjaxTable(</SPAN><SPAN style="COLOR: #0000ff">string</SPAN><SPAN style="COLOR: #000000">&nbsp;name)<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;3</SPAN><SPAN style="COLOR: #000000"><IMG id=Codehighlighter1_61_416_Open_Image onclick="this.style.display='none'; Codehighlighter1_61_416_Open_Text.style.display='none'; Codehighlighter1_61_416_Closed_Image.style.display='inline'; Codehighlighter1_61_416_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_61_416_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_61_416_Closed_Text.style.display='none'; Codehighlighter1_61_416_Open_Image.style.display='inline'; Codehighlighter1_61_416_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_61_416_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"></SPAN><SPAN id=Codehighlighter1_61_416_Open_Text><SPAN style="COLOR: #000000">{<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;4</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">输入一个字符串，然后更新</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">&nbsp;5</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlConnection&nbsp;conn&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;SqlConnection(&nbsp;System.Configuration.ConfigurationSettings.AppSettings[</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">connectionString</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">]&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;6</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlCommand&nbsp;cmd&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;SqlCommand(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">insert&nbsp;into&nbsp;ajaxTable(name)&nbsp;values('</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">name</SPAN><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">')</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">,&nbsp;conn);<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;7</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Connection.Open();<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;8</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">&nbsp;result&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;cmd.ExecuteNonQuery();<BR></SPAN><SPAN style="COLOR: #008080">&nbsp;9</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.Dispose();<BR></SPAN><SPAN style="COLOR: #008080">10</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Dispose();<BR></SPAN><SPAN style="COLOR: #008080">11</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">return</SPAN><SPAN style="COLOR: #000000">&nbsp;result;<BR></SPAN><SPAN style="COLOR: #008080">12</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR></SPAN><SPAN style="COLOR: #008080">13</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">14</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Ajax.AjaxMethod]<BR></SPAN><SPAN style="COLOR: #008080">15</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">public</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">string</SPAN><SPAN style="COLOR: #000000">&nbsp;GetAjaxTable()<BR></SPAN><SPAN style="COLOR: #008080">16</SPAN><SPAN style="COLOR: #000000"><IMG id=Codehighlighter1_472_1367_Open_Image onclick="this.style.display='none'; Codehighlighter1_472_1367_Open_Text.style.display='none'; Codehighlighter1_472_1367_Closed_Image.style.display='inline'; Codehighlighter1_472_1367_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_472_1367_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_472_1367_Closed_Text.style.display='none'; Codehighlighter1_472_1367_Open_Image.style.display='inline'; Codehighlighter1_472_1367_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_472_1367_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"></SPAN><SPAN id=Codehighlighter1_472_1367_Open_Text><SPAN style="COLOR: #000000">{<BR></SPAN><SPAN style="COLOR: #008080">17</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">这个方法就是拿到datagrid生成出来的html</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">18</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlConnection&nbsp;conn&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;SqlConnection(System.Configuration.ConfigurationSettings.AppSettings[</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">connectionString</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">]);<BR></SPAN><SPAN style="COLOR: #008080">19</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlCommand&nbsp;cmd&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;SqlCommand(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">select&nbsp;*&nbsp;from&nbsp;ajaxTable&nbsp;order&nbsp;by&nbsp;id</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">,&nbsp;conn);<BR></SPAN><SPAN style="COLOR: #008080">20</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlDataAdapter&nbsp;ap&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;SqlDataAdapter(&nbsp;cmd&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">21</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataSet&nbsp;ds&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;DataSet();<BR></SPAN><SPAN style="COLOR: #008080">22</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ap.SelectCommand.Connection.Open();<BR></SPAN><SPAN style="COLOR: #008080">23</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ap.Fill(&nbsp;ds,&nbsp;</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">db</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">24</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">25</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conn.Dispose();<BR></SPAN><SPAN style="COLOR: #008080">26</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Dispose();<BR></SPAN><SPAN style="COLOR: #008080">27</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">28</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">实例化一个datagird类并设置好数据源</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">29</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataGrid&nbsp;dg&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;DataGrid();<BR></SPAN><SPAN style="COLOR: #008080">30</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dg.DataSource&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;ds.Tables[</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">db</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">];<BR></SPAN><SPAN style="COLOR: #008080">31</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dg.DataBind();<BR></SPAN><SPAN style="COLOR: #008080">32</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">33</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">实例化一个HtmlTextWriter的类</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">34</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Text.StringBuilder&nbsp;strb&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;System.Text.StringBuilder();<BR></SPAN><SPAN style="COLOR: #008080">35</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.IO.StringWriter&nbsp;sw&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;System.IO.StringWriter(&nbsp;strb&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">36</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Web.UI.HtmlTextWriter&nbsp;htw&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">new</SPAN><SPAN style="COLOR: #000000">&nbsp;HtmlTextWriter(&nbsp;sw&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">37</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">38</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">执行控件的render并输出到HtmlTextWriter里</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">39</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dg.RenderControl(&nbsp;htw&nbsp;);<BR></SPAN><SPAN style="COLOR: #008080">40</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">41</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">string</SPAN><SPAN style="COLOR: #000000">&nbsp;s&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">&nbsp;strb.ToString();<BR></SPAN><SPAN style="COLOR: #008080">42</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><BR></SPAN><SPAN style="COLOR: #008080">43</SPAN><SPAN style="COLOR: #000000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">return</SPAN><SPAN style="COLOR: #000000">&nbsp;s;</SPAN><SPAN style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">最后就是返回这个html啦</SPAN><SPAN style="COLOR: #008000"><BR></SPAN><SPAN style="COLOR: #008080">44</SPAN><SPAN style="COLOR: #008000"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top></SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV><BR>5.然后再建一个default.js文件，用作存放 js方法 
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #0000ff">function</SPAN><SPAN style="COLOR: #000000">&nbsp;AddAjax(name)<BR><IMG id=Codehighlighter1_23_71_Open_Image onclick="this.style.display='none'; Codehighlighter1_23_71_Open_Text.style.display='none'; Codehighlighter1_23_71_Closed_Image.style.display='inline'; Codehighlighter1_23_71_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_23_71_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_23_71_Closed_Text.style.display='none'; Codehighlighter1_23_71_Open_Image.style.display='inline'; Codehighlighter1_23_71_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top></SPAN><SPAN id=Codehighlighter1_23_71_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"></SPAN><SPAN id=Codehighlighter1_23_71_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;DemoMethods.AddAjaxTable(name);<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;LoadGrid();<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top></SPAN><SPAN style="COLOR: #0000ff">function</SPAN><SPAN style="COLOR: #000000">&nbsp;LoadGrid()<BR><IMG id=Codehighlighter1_94_186_Open_Image onclick="this.style.display='none'; Codehighlighter1_94_186_Open_Text.style.display='none'; Codehighlighter1_94_186_Closed_Image.style.display='inline'; Codehighlighter1_94_186_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_94_186_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_94_186_Closed_Text.style.display='none'; Codehighlighter1_94_186_Open_Image.style.display='inline'; Codehighlighter1_94_186_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top></SPAN><SPAN id=Codehighlighter1_94_186_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"></SPAN><SPAN id=Codehighlighter1_94_186_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;</SPAN><SPAN style="COLOR: #0000ff">var</SPAN><SPAN style="COLOR: #000000">&nbsp;cc</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">document.getElementById(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">UCtd</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">);<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;cc.innerHTML</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">DemoMethods.GetAjaxTable().value;&nbsp;<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</SPAN></SPAN></DIV><BR>6.建一个default.aspx，在pageload事件里面加个注册的东西 
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">private</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN style="COLOR: #000000">&nbsp;Page_Load(</SPAN><SPAN style="COLOR: #0000ff">object</SPAN><SPAN style="COLOR: #000000">&nbsp;sender,&nbsp;System.EventArgs&nbsp;e)<BR><IMG id=Codehighlighter1_62_139_Open_Image onclick="this.style.display='none'; Codehighlighter1_62_139_Open_Text.style.display='none'; Codehighlighter1_62_139_Closed_Image.style.display='inline'; Codehighlighter1_62_139_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_62_139_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_62_139_Closed_Text.style.display='none'; Codehighlighter1_62_139_Open_Image.style.display='inline'; Codehighlighter1_62_139_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN id=Codehighlighter1_62_139_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_62_139_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ajax.Utility.RegisterTypeForAjax(</SPAN><SPAN style="COLOR: #0000ff">typeof</SPAN><SPAN style="COLOR: #000000">(AjaxTestPrjLib.DemoMethods));<BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</SPAN></SPAN></DIV>
<P>7.最后就是default.aspx的html和js了，呵呵</P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG id=Codehighlighter1_2_110_Open_Image onclick="this.style.display='none'; Codehighlighter1_2_110_Open_Text.style.display='none'; Codehighlighter1_2_110_Closed_Image.style.display='inline'; Codehighlighter1_2_110_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_2_110_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2_110_Closed_Text.style.display='none'; Codehighlighter1_2_110_Open_Image.style.display='inline'; Codehighlighter1_2_110_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #ffff00">&lt;%</SPAN><SPAN id=Codehighlighter1_2_110_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN id=Codehighlighter1_2_110_Open_Text><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">@&nbsp;Page&nbsp;language</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">=</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">c#</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">&nbsp;Codebehind</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">=</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">default.aspx.cs</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">&nbsp;AutoEventWireup</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">=</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">false</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">&nbsp;Inherits</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">=</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">AjaxTextPrjWeb._default</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">"</SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #f5f5f5">&nbsp;</SPAN></SPAN><SPAN style="COLOR: #000000; BACKGROUND-COLOR: #ffff00">%&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top></SPAN><SPAN style="COLOR: #0000ff">&lt;!</SPAN><SPAN style="COLOR: #ff00ff">DOCTYPE&nbsp;HTML&nbsp;PUBLIC&nbsp;"-//W3C//DTD&nbsp;HTML&nbsp;4.0&nbsp;Transitional//EN"&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top></SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">HTML</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">HEAD</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">title</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000">default</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">title</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">meta&nbsp;</SPAN><SPAN style="COLOR: #ff0000">name</SPAN><SPAN style="COLOR: #0000ff">="GENERATOR"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;Content</SPAN><SPAN style="COLOR: #0000ff">="Microsoft&nbsp;Visual&nbsp;Studio&nbsp;.NET&nbsp;7.1"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">meta&nbsp;</SPAN><SPAN style="COLOR: #ff0000">name</SPAN><SPAN style="COLOR: #0000ff">="CODE_LANGUAGE"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;Content</SPAN><SPAN style="COLOR: #0000ff">="C#"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">meta&nbsp;</SPAN><SPAN style="COLOR: #ff0000">name</SPAN><SPAN style="COLOR: #0000ff">="vs_defaultClientScript"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;content</SPAN><SPAN style="COLOR: #0000ff">="JavaScript"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">meta&nbsp;</SPAN><SPAN style="COLOR: #ff0000">name</SPAN><SPAN style="COLOR: #0000ff">="vs_targetSchema"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;content</SPAN><SPAN style="COLOR: #0000ff">="http://schemas.microsoft.com/intellisense/ie5"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">script&nbsp;</SPAN><SPAN style="COLOR: #ff0000">language</SPAN><SPAN style="COLOR: #0000ff">="javascript"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;src</SPAN><SPAN style="COLOR: #0000ff">="default.js"</SPAN><SPAN style="COLOR: #0000ff">&gt;&lt;/</SPAN><SPAN style="COLOR: #800000">script</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">HEAD</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">body&nbsp;</SPAN><SPAN style="COLOR: #ff0000">onload</SPAN><SPAN style="COLOR: #0000ff">="LoadGrid()"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">form&nbsp;</SPAN><SPAN style="COLOR: #ff0000">id</SPAN><SPAN style="COLOR: #0000ff">="Form1"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;method</SPAN><SPAN style="COLOR: #0000ff">="post"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;runat</SPAN><SPAN style="COLOR: #0000ff">="server"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">INPUT&nbsp;</SPAN><SPAN style="COLOR: #ff0000">type</SPAN><SPAN style="COLOR: #0000ff">="text"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;id</SPAN><SPAN style="COLOR: #0000ff">="AddTextBox"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;maxlength</SPAN><SPAN style="COLOR: #0000ff">="10"</SPAN><SPAN style="COLOR: #0000ff">&gt;&lt;</SPAN><SPAN style="COLOR: #800000">INPUT&nbsp;</SPAN><SPAN style="COLOR: #ff0000">type</SPAN><SPAN style="COLOR: #0000ff">="button"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;value</SPAN><SPAN style="COLOR: #0000ff">="添加"</SPAN><SPAN style="COLOR: #ff0000">&nbsp;onclick</SPAN><SPAN style="COLOR: #0000ff">="javascript:AddAjax(form.AddTextBox.value);"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">table</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">tr</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">td&nbsp;</SPAN><SPAN style="COLOR: #ff0000">id</SPAN><SPAN style="COLOR: #0000ff">="UCtd"</SPAN><SPAN style="COLOR: #0000ff">&gt;&lt;/</SPAN><SPAN style="COLOR: #800000">td</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">tr</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">table</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">form</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">body</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top></SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">HTML</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN></DIV><BR><BR>这样，就能使用datagrid来输出表格了，呵呵。总体思路其实还是比较简单的，日后有兄弟做出更好的，请贴出来，而我也会继续努力的。谢谢....继续工作去.... <img src ="http://www.cnblogs.com/jasmineou/aggbug/244312.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44364/" target="_blank">迅雷统计系统开始测试</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item></channel></rss>