﻿<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title><![CDATA[最新博客列表 - 艺风在线 - Power By CSZI.com]]></title>
    <link>http://max.cszi.com</link>
    <description><![CDATA[CSBlog官方网站，CSBlog是巧思工作室使用Asp.Net2.0(C#)开发的一套免费的Blog系统，采用原始数据的Xml+Xslt模板输出标准的Xhtml页面，原创的经典架构、合理的设计、轻巧方便的更改主题，是同类产品中的佼佼者。希望我们辛苦的努力可以为您的生活和工作带来很多方便。]]></description>
    <language>zh-cn</language>
    <copyright><![CDATA[Copyright 2003-2008 ChaosStudio[巧思]]]></copyright>
    <webMaster>zhouyu@69sea.com(一线风)
        </webMaster>
    <generator>CSBlog v2.0.1</generator>
    <image>
      <title><![CDATA[最新博客列表 - 艺风在线 - Power By ]]></title>
      <url>/App_Themes/Love/Images/</url>
      <link>http://max.cszi.com</link>
      <description><![CDATA[CSBlog官方网站，CSBlog是巧思工作室使用Asp.Net2.0(C#)开发的一套免费的Blog系统，采用原始数据的Xml+Xslt模板输出标准的Xhtml页面，原创的经典架构、合理的设计、轻巧方便的更改主题，是同类产品中的佼佼者。希望我们辛苦的努力可以为您的生活和工作带来很多方便。]]></description>
    </image>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=564</link>
      <title><![CDATA[CSBlogV2.11问题收集与信息反馈专用-提供09年贺岁版下载地址]]></title>
      <author>一线风</author>
      <category>项目文档</category>
      <pubDate>2008-12-31 9:38:44</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=564</guid>
      <comments>
              /Blog/Blog.aspx?Id=564#commentbox
            </comments>
      <description><![CDATA[<p><strong><font color="#3366ff">您在使用CSBlogV2.11的过程中有什么问题请发表与此的评论中，我们会尽快的给予解决。</font></strong></p>
<p>&nbsp;<a href="http://max.cszi.com/Blog/565-1.aspx"><strong><font color="#ff0000">CSBlogV2.11的更新历史记录：http://max.cszi.com/Blog/565-1.aspx</font></strong></a></p>
<p>1. 如果出现要求写权限的错误，请打开Everyone的读写权限。并且数据库的只读属性要去掉。</p>
<p>&nbsp;</p>
<p><font face="Verdana" color="#ff0000" size="3"><strong>2009新年贺岁版－ 牛气冲天下载：<br />
<br />
1. </strong></font><a href="http://down.chinaz.com/soft/24379.htm"><font face="Verdana" color="#ff0000" size="3"><strong>http://down.chinaz.com/soft/24379.htm</strong></font></a></p>
<p><strong><font face="Verdana" color="#ff0000" size="3">2. </font></strong><a href="http://files.cnblogs.com/atwind/CSBlogV211-Preview1.rar"><strong><font face="Verdana" color="#ff0000" size="3">http://files.cnblogs.com/atwind/CSBlogV211-Preview1.rar</font></strong></a><br />
<br />
<br />
<br />
Q: 为什么新发表的Blog会出现重写错误?<br />
A: 原因是读取不到评论的集合及分页信息,解决办法一是让所有角色都可以读取评论,二是在Blog.xslt(这个对应你的主题的Blog目录下)修改136行附近的原内容为:</p>
<p>&nbsp;&nbsp;&lt;xsl:if test=&quot;$Collection&quot;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;div&nbsp; class=&quot;comment-page&quot;&nbsp; xml:space=&quot;preserve&quot;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;xsl:call-template name=&quot;UI.RePaging&quot;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;xsl:with-param name=&quot;Paging&quot; select=&quot;$Paging&quot; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;xsl:with-param name=&quot;BaseUrl&quot; select=&quot;cs:makePage('/Blog/Blog.aspx','BlogDetail',$Paging,$Blog/@Id)&quot; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/xsl:call-template&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/div&gt;<br />
&nbsp;&nbsp;&lt;/xsl:if&gt;</p>
<p>第二种办法是解决的根本.</p><p>----------------------------------------------------------<br />
热心网友建议及回复:</p>
<p>1.大图片应该能自适应最大页面框架，超出某个比例时，将显示最大宽幅的自适应显示器和浏览器的页面（有滚动条也行），不过这一点不太重要。<br />
<font color="#339966">A: 这个可以在后面设定一个比较小的缩略图,而不是直接设为最大的.(因为大图对客户端的下载也是个问题.) 还有个办法就是CSS来控制,溢出时自动隐藏(Baidu 是这样的)</font><br />
<br />
2.图片（附件）上传后，在编辑状态中后或者重新上传，对于指定的上传文件夹中无效的旧图片和附件，系统均应自动给与删除。<br />
<font color="#99cc00">A: 这个将在下一版本上实现.</font><br />
<br />
3.后台可以查看图片附件以及手动清理非有效链接附件（图片）。<br />
<font color="#99cc00">A: 这个将在下一版本上实现.</font><br />
<br />
4.标签总管理，应该可以删除或者修改。<br />
<font color="#33cccc">A: 这个暂时记下</font><br />
<br />
5.系统自动识别图片后，在相册中集中显示；或者单独开设相册（画册）栏目，以列表幻灯等多种模式显示。<br />
<font color="#99cc00">A: 这个将在下一版本上实现.</font><br />
<br />
6.图片上传有时有故障，上传不能成功，需要查找原因修正。<br />
<font color="#ff0000">A: 下一版本改进</font><br />
<br />
7.留言板不可用,不过我考虑外挂一个，因为也有很不错的小型留言板。<br />
<font color="#99cc00">A: 下一版本的插件形式发布</font><br />
<br />
8.用户中心不可用，这需要及早修复，因为会影响用户体验。<br />
<font color="#ff0000">A: 因为现在基本上是本人,所以大多是直接在后台更改,下一版本中改进</font><br />
<br />
9.用户Norton(Symantec）防火墙开启时，诸多功能都出现异常，比如回复，显示为未知错误，但在无验证码情况下，在显示错误的同时，能发布。发文章和图片上传则不行。<br />
<font color="#ff00ff">A:这个没有碰到过,回头我查一下.</font><br />
<br />
10.后台给管理员在后台查看文章标题和所有评论的功能，可以随时总览文章以及评论，方便删除。目前前后台管理分离，分别授权。习惯上后台管理权限应该包括前台管理。但方便起见，增加对文章列表、评论列表、标签列表的管理即可。<br />
<font color="#993366">A: 暂时记下</font><br />
<br />
11.ReWrite重写，可否写成html的后缀？搜索引擎很喜欢。<br />
<font color="#ff0000">A:Html后缀是直接要修改IIS的解析指向的,这个可以在IIS上自已改.已经实现</font><br />
<br />
12.从百度搜索官方站点看，搜索到的内容部分，需要进行改进。目前在meta使用了优秀的调用前部分文章文字功能，但没有发挥作用。<br />
<font color="#00ff00">A:我的SEO确实是凭感觉,回头好好看一下!</font><br />
<br />
13.ACC数据库总保持在出现ldb打开的状态，我不懂，不知道是否是同程序代码有关？<br />
<strong><font style="background-color: #ff0000">A: 一直保持在打开状态是能为了更快速的响应数据读取与更新,可以在后台暂时关闭.</font></strong></p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=746</link>
      <title><![CDATA[在客户端设定启动Silverlight项目的特定页。]]></title>
      <author>一线风</author>
      <category>学习参考</category>
      <pubDate>2010-7-15 16:51:09</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=746</guid>
      <comments>
              /Blog/Blog.aspx?Id=746#commentbox
            </comments>
      <description><![CDATA[<p>Silverlight和Flash还是很不一样的，想要启动某个特定的Page，可不能像Flash那个直接引用就行了的。今天在网上看了看，是能用参数传入的，服务端反射来创建实体</p>
<div class="codeText">
<div class="codeHead">修改App.xaml.cs里的对应的方法如下：</div>
<ol class="dp-c">
    <li class="alt"><span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;Application_Startup(</span><span class="keyword">object</span><span>&nbsp;sender,&nbsp;StartupEventArgs&nbsp;e) &nbsp;&nbsp;</span></span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//this.RootVisual&nbsp;=&nbsp;new&nbsp;MainPage(); </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//使用反射来启动相应的Silverlight </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(!e.InitParams.ContainsKey(</span><span class="string">&quot;InitPage&quot;</span><span>)) &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RootVisual&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;MainPage(); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Assembly&nbsp;assembly&nbsp;=&nbsp;Assembly.GetExecutingAssembly(); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;rootName&nbsp;=&nbsp;String.Format(</span><span class="string">&quot;SilverlightApp.{0}&quot;</span><span>,&nbsp;e.InitParams[</span><span class="string">&quot;InitPage&quot;</span><span>]); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UIElement&nbsp;rootVisual&nbsp;=&nbsp;assembly.CreateInstance(rootName)&nbsp;</span><span class="keyword">as</span><span>&nbsp;UIElement; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RootVisual&nbsp;=&nbsp;rootVisual; &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
</ol>
</div><p>修改客户页页面内容如下：</p>
<p>&nbsp;</p>
<div class="codeText">
<div class="codeHead">XML/HTML代码</div>
<ol class="dp-xml">
    <li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">form</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;form1&quot;</span><span>&nbsp;</span><span class="attribute">runat</span><span>=</span><span class="attribute-value">&quot;server&quot;</span><span>&nbsp;</span><span class="attribute">style</span><span>=</span><span class="attribute-value">&quot;height:100%&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">div</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;silverlightControlHost&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">object</span><span>&nbsp;</span><span class="attribute">data</span><span>=</span><span class="attribute-value">&quot;data:application/x-silverlight-2,&quot;</span><span>&nbsp;</span><span class="attribute">type</span><span>=</span><span class="attribute-value">&quot;application/x-silverlight-2&quot;</span><span>&nbsp;</span><span class="attribute">width</span><span>=</span><span class="attribute-value">&quot;100%&quot;</span><span>&nbsp;</span><span class="attribute">height</span><span>=</span><span class="attribute-value">&quot;100%&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;source&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;ClientBin/SilverlightApp.xap?r=&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#ff0000"><u><span class="comments">&lt;!--启动特定页--&gt;</span><span>&nbsp;&nbsp;</span></u></font></strong></li>
    <li><font color="#ff0000"><strong><font color="#ff0000"><u><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;InitParams&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;InitPage=Page19&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span></u></font></strong><span>&nbsp;&nbsp;</span></font></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;onError&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;onSilverlightError&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;background&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;white&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;minRuntimeVersion&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;3.0.40818.0&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">param</span><span>&nbsp;</span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;autoUpgrade&quot;</span><span>&nbsp;</span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;true&quot;</span><span>&nbsp;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">a</span><span>&nbsp;</span><span class="attribute">href</span><span>=</span><span class="attribute-value">&quot;http://go.microsoft.com/fwlink/?LinkID=149156&amp;v=3.0.40818.0&quot;</span><span>&nbsp;</span><span class="attribute">style</span><span>=</span><span class="attribute-value">&quot;text-decoration:none&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">img</span><span>&nbsp;</span><span class="attribute">src</span><span>=</span><span class="attribute-value">&quot;http://go.microsoft.com/fwlink/?LinkId=108181&quot;</span><span>&nbsp;</span><span class="attribute">alt</span><span>=</span><span class="attribute-value">&quot;获取&nbsp;Microsoft&nbsp;Silverlight&quot;</span><span>&nbsp;</span><span class="attribute">style</span><span>=</span><span class="attribute-value">&quot;border-style:none&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;/</span><span class="tag-name">a</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;/</span><span class="tag-name">object</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;</span><span class="tag-name">iframe</span><span>&nbsp;</span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;_sl_historyFrame&quot;</span><span>&nbsp;</span><span class="attribute">style</span><span>=</span><span class="attribute-value">&quot;visibility:hidden;height:0px;width:0px;border:0px&quot;</span><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">iframe</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;/</span><span class="tag-name">div</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="tag">&lt;/</span><span class="tag-name">form</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>注意那个带下划线的配置，这里有个很奇怪的问题，不知为什么，把InitPage改为别的就失去效果了。真是晕死人了。</p>
<p>调试好像也不是那么方便。</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=745</link>
      <title><![CDATA[推荐一本小说 冒牌大英雄]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-6-8 19:33:47</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=745</guid>
      <comments>
              /Blog/Blog.aspx?Id=745#commentbox
            </comments>
      <description><![CDATA[<p><span class="clearfix">URL：<a href="http://www.qidian.com/Book/131957.aspx">http://www.qidian.com/Book/131957.aspx</a></span></p>
<p><span class="clearfix">呵~~ 真的是很不错，顺便转一下一个比较铁杆的评论。</span></p>
<p><span class="clearfix">以下转载：</span></p>
<p><span class="clearfix">------------------------------</span></p>
<p><span class="clearfix">一开始看文，我那个鬱闷啊，主角田行健这就是块牛粪么？你想怎么踩就怎么踩,只要你不嫌脏。&hellip;&hellip;我彻底无语了。后来，发现原来拨开牛粪的外层，里面有那么点闪光的东西。让人觉得人性不至于绝望。&hellip;&hellip;再小再卑微的人物，都又让人看走眼的时候啊。 <br />
<br />
要说七十二编大人写的好呢，似乎也不是特别的好，可是，很有特点。一本书，不管有多么宏大的背景，如果没有鲜明生动的人物，就是失败。一篇文章的靈魂，在於主角的魅力。</span></p><p>本书主角让人很意外，是个猥琐的胖子，这让我想到那篇丹王记（大陸名稱：骗艳记）的修真文，主角也是一个胖子，但是个人感觉，七十二编大人这篇文的主角塑造，形象更是饱满了许多。<br />
<br />
大家总是想透过皮相看到本质，但事实上皮相能看到多少本质？一个胆小的人如何成为英雄？这个世界上有多少人有此慧眼？<br />
<br />
本来这种痞痞又猥瑣的文风和我的口味不太和，可是或许是作者的人物塑造--从主角到配角--都太有爱了，总之是看了就放不下的文。我竟然无法点评里面的人物，妖孽文。一窝都妖孽。从师父拉塞尔，胖子，到跟随他的人。因为他们太复杂了，太立体了。从不同的角度看，都看到一个不同的人格。若用简单的点评来对他们进行定型，是非常不公平的。<br />
<br />
感觉上，作者和胖子有些共通之处，他们还有许多玫瑰色的梦想，&hellip;&hellip;头脑是包罗万象的，很会把现实与幻想天衣无缝的结合起来。理想主义跟现实主义发挥到了极致。<br />
<br />
文中，主角不一定是改变着的，但是又不能说完全没有改变，相对于一般作品中的单向性发展，这篇文倒比较像是在一钵水中调颜色，旧的还在，新的又来，层层迭迭，五彩斑斓。在胖子本人的那些特质上已经登峰造极了，不可能有人与他比肩，也不大可能有人真正理解，即使号称理解他的师父拉塞尔，也不能。<br />
<br />
其实，这个主题很好，看一个普通人在英雄的名义下到底能够挑战自己到什么地步，他的一切事蹟大都是被逼迫出来的。&hellip;&hellip;但如果成长需要从逼迫中进行，那胖子总能从中获得一些经验。<br />
<br />
看文的时候，你总是会被胖子时不时冒出来的言论噎到。也许击节大赞精闢，也许捧腹大夸佩服。作者让人惊嘆的一点，就是这种特色，似乎有點火星，有些斷層，你總是無法猜測田行健下一句可能說什麼話。七十二編大人把主角塑造的非常不完美，但很魅力。主角在苦涩的艰难中&hellip;&hellip;幽默且猥琐著，让你有种忍不住想扁他，无言又感慨的感觉。<br />
<br />
在开头几章勾勒出田行健的基本轮廓，肥胖，**，胆小，怕死，猥琐，以及不合时宜的狂想，一直贯穿到了目前章节，并且还有延续的迹象。同时随着情节的发展，作者又不断用情节场景以及评价性语言来修正胖子的形象，这种修正不是推倒性的重建，而是融入性的增补。<br />
<br />
胖子始终不曾轻易走形，生活不能叫他突变，爱情就不可能了。这么一种性格塑造，完全抛弃了惯用的单向性历时性路线，是利用文本自身张力与融合性塑造立体式人物形象的极佳范例。 <br />
<br />
即使胖子像烤架上的牛排，翻过来覆过去，被人烤得五黑冒油，可是你可以从中看到他小强一样的生命力，坚毅，不羈，以及&hellip;&hellip;变态的**。<br />
<br />
综观而论，本书的故事曲折，地点转换鲜明，人物也如流水一样转换。里面的人物很多，作为支线人物，他们各有各的性格，每个性格都不重复，让人很愿意探寻这些支线人物背后的故事。 但只有一条主线：就是胖子。这人就一土匪流氓，但却充满生命力。作者用他来串起这个故事，支起整片星域，让人产生浓厚的好奇心，一直追寻下去。<br />
<br />
其实凭良心讲，文字不是顶好，但是作者的节奏感相当好。这个作者是否还有其他文，我不晓得，但即使只写了这个文，也值得被记住。<br />
<br />
这是一个十分戏剧的故事，戏剧张力很强。&hellip;&hellip;论戏剧化，没人可以比的上莎士比亚，但是他的文，无法形容，你相信他，并且被他打动。&hellip;&hellip;本篇文亦是如此，一个如同**般猥琐的男人，变成一个无所不能的英雄。<br />
<br />
但与其说这是讲一个冒牌英雄，不如说这是一群勒雷人、自由世界，甚至他们敌对的国家，斐盟，西约，都在燃烧他们的生命和对国家的热情，为了达到某个目标，某个巅峰。你很容易就被这种毫无保留的热情感动。那些柔软的话语，幽默的对白，在他笔下不经意提起的配角，只有这样的心，才能写出那样温馨的文字。 <br />
<br />
我最佩服的一点，在於作者一直没有特别强调来描写这个人物是个什么样的人，而是应该用故事来告诉读者他是一个什么样的人。我们能借着作者的文字去窥测一个架空的故事般奇妙：分明是虚构出的假象，却烙着特有的气味与标记。回顾那个时代并非为了接近真实。描述它，观察它，阅读它，这种指向性的关注才是最根本的意义。</p>
<p>说到这裡，我想提一下，胖子田行健的武功，机甲术，推衍法，潜行术等等，大都是以我们中国千年的文化来树立基础，然后练习不久就让人感觉无所不能，说实话有点像是看到美国电影裡头的大美国主义一样的荒谬感，拯救世界的一定都是美国人。<br />
<br />
其实，我自始至终，就没搞清楚胖子所谓的【中国式推衍】是怎样的推衍法，为何用电脑推衍一下，什麼状况就都可以摆平，这麼厉害的话，那中国岂不是早该成为世界第一强？&hellip;&hellip;不过虽然觉得有点离谱，可是看了还是觉得很爽就是，哈哈哈～～<br />
<br />
这篇文中，浮夸而华丽的用文非常少，和一些作者往往不吝华美复杂的词汇堆砌不同，我始终不认为那能算【文笔】。我虽然很敬仰这种人懂得那么多中文成语，可是很少佩服他们，卖弄的嫌疑太重。&hellip;&hellip;而本文不同，没有什么深奥的词汇，句子也非常浅显白话，可是那种游刃有余的功力顯露無遺，情节紧凑，几乎从头到尾没有冷场。<br />
<br />
如果说，前一种风格是韩剧那些化妆出来的无懈可击的人工美女，后者就是穿了白衬衫卡其裤子，爽朗透明的男子汉。 说句得罪其他读者的话，我并不希望七十二编大人特别加更，就是因为可以从文中看到他对文字的执著，他的字句都是经过推敲过的，而且不带匠气，那样的坚持让我感动。这样文章的品质，我觉得比更新速度重要的多。</p>
<p>和一般奇幻文中，总是从容不迫冷静自持泰山崩於前色不变的神人主角不同，胖子碰到困难和危险，总是害怕，总是颤抖，有时哭得涕泗交流毫无形象，就如我们一般人一样。但我想这篇文，主要的内容讲的是勇气吧，一个普通胆小的人，在困境中，为了保家卫国，为了想生存，所激发的勇气。<br />
<br />
胖子是如此无耻地天真着努力想生存，但总让人有一种随波逐流的无力感，似乎你做的再多，也逃不过命运。他总在夹缝裡，一次又一次的处在困境，四方无援，打擊接踵而來。那样胆小的人，心灵象是在深渊中下降，跌了很久也不见尽头。<br />
<br />
可是他哭完吼完以后，便努力掰回局面。第一次困境时他挣扎，我当时唬了一跳：这么着急作碎玉么？第二次他挣扎，我开始期待，第三次他挣扎，我开始佩服。&hellip;&hellip;那是我从来不曾拥有过这种勇气，遗憾的是，冒牌的英雄为何如此稀少，至今只胖子一个，显然，并不是每个人披上黑大衣就能成为小马哥。<br />
<br />
我并不晓得，以一人之力去对抗整个世界，能走多远？但不管在哪裡的困境，主角都有一个特色，他很会【借势】，以致於孤军奋斗时，怎样都能如鱼得水，这也是我佩服作者铺陈的一处。但即使如此，主角的处境，个人以为，前景够呛。<br />
<br />
天行健，君子以自強不息。田行健不是君子，但他顯然自強不息。简单来说，这个主角非内裤超人。他能够在战斗中取得胜利，不是因为他超前时代的发明，不只是他运筹帷幄的谋略，每一次的挣扎都藉由作者的手来铺陈，胖子很辛苦的一点一点发展，才得到后来艰难的胜利。怕死的人尤其知道生命的价值，这样的人，我认同感最强。<br />
<br />
&hellip;&hellip;虽然看网络小说我也喜欢yy，但是不等于说你告诉我天上有头猪在飞我也毫无保留的相信。&hellip;&hellip;可惜很多作者显然以为我们会这样相信，并且他们这麼写。<br />
<br />
一路看文下来，我心里很是惦记这个孤独的胖子，虽然七十二编大人总是用幽默的文笔来形容他可笑的猥琐，但事实上，他被全世界抛弃，他仍自私且坚持的想要活下去，并且活的好。我想他是这麼感觉：理想主义是好的，但为了理想主义牺牲，就不理想了，可是要牺牲时他虽惧怕却没有逃避，在这其中他努力生存。这样的心情，想到他处的夹缝，我怎么想，怎么觉得嘴里发苦。<br />
<br />
这段人生假如能缩小成一幅画，那么我看到的是胖子身穿机甲，目光坚定，胖臉扯開不羈地笑著，他在那幅画里站着，烽火连天，硝烟滚滚，看不清楚，虽然不完美，但是油墨重彩，令人难以忘怀。 <br />
<br />
七十二编大人是一个言语风格自成一体又张弛有度的作者，在天真仲透着残酷，在现实中透着浪漫，他使用犀利又动人的手法，伏笔甚多，但逻辑分明，让那一幅幅剪影贴画的视角清楚动人，我也为这折磨的纠结和一点暗含的温情感动了。 <br />
<br />
与其说主角，不如说作者很幽默，我经常一边看一边嘿嘿笑，有点演义和评书的劲，但是这文却绝对不是那种没有内容的瞎掰，更不是常见的那种小白傻乐。幽默与狡袺，尺度的把握非常好啊。</p>
<p>另外我想提一点，这篇文章的爱情，我总是觉得有些肤浅了，或者我说，这文中没有爱情，最多是倾慕。文章中的那些女人，除了青梅竹马的安蕾外，其他要不是被他救了一次两次三次，得了【被救强迫症】的女人，再不就是剽悍女，这些无数的女人，都爱上了胖子，从开始的不屑，到惊嘆，到佩服，到倾慕。<br />
<br />
&hellip;&hellip;我有点感嘆，这鲜花经常插在牛粪上，那是因为牛粪营养够啊。 每次看这种文，都让我对自己平凡的外表产生信心，牛粪也有上天堂的可能啊。<br />
<br />
不过回过头来说，我没看出她们为了胖子做了什麼，努力带给胖子怎样的温馨。实际上，我亦看不出她们所谓的爱，和肤浅的迷恋有何不同。是的，胖子很厉害，胖子很有能力，但毕竟，迷恋不是爱情。谁都喜欢有一个让自己无比崇拜的人在身边，至于这个人在黑夜里怎么度过，谁又在乎？我这般世俗的人，不懂得什么大道理，就看重别人为我做的一点一滴。<br />
<br />
&hellip;&hellip;当然，也许作者还没写到深刻的爱，作者可能还在铺陈，不过谁在意呢，虽然七十二编大人一直努力强调胖子很好色，但显然此文重点不在於爱情和H 。只能说是一个不够丰满的小遗憾。<br />
<br />
还有点可惜的是，在很多细节上，其实有很多矛盾，而有些地方则显得囉唆而多餘，它是每一处都足够详尽，但是这些闪闪发光的动人片段像是漂流在一条河流上的浮冰&mdash;&mdash;此篇文架构很大，可能作者是唯一那个有在直升机上往下俯瞰而得悉全貌的角度的人，而读者是无法具备这种条件的。<br />
<br />
我感觉的出作者对文字极强的控制力，以及深厚的逻辑能力，他给胖子增加了很多元素，也代表作者本身知识的庞杂，甚至让我有点感觉到，作者笔下的胖子可说是偏向【师士传说】裡面的叶重那样的博杂强悍。但也因为如此，许多精彩却多餘的枝节有些冗了，我个人不是很欣赏。<br />
<br />
&hellip;&hellip;就像中国画里需要流白一样，写文，也需要留下让读者想象和思考的空间。把一切空白都填满，反而失去文学那种神秘感了。作者的写文风格，本来我很欣赏，但是，过尤不及。把自己擅长的分析风格发挥太过，便少了韵味。&hellip;&hellip; 也许这种说法是我有点吹毛求疵，太过求好了。花枝一朵，看官百样。无所谓对错，喜欢就好。 <br />
<br />
看到有些人说所谓的勒雷，作者是隐射中国大陆，但其实我不认为。&hellip;&hellip;勒雷在战争前并没有什麼很大的创伤，富足而快乐，年轻人几乎没有对未来的不安，永远是乐观的前进。<br />
<br />
但是中国大陆，综观歷史，总觉得千疮百孔，中国人在文化的波涛中总参杂这一点高傲的忧愁，歷史沉淀下来的感怀与不安，那是在骨子裡的，这是与勒雷完全不同的类型。&hellip;&hellip;当然，这是我个人的看法，所谓一千个观众眼中有一千个哈姆雷特，也许作者是真的隐射了中国，这个未必可知。<br />
<br />
最后我想题外抱怨一下，像是冒牌大英雄这样的文，其实已经并不多了，很无奈的说，大多数以男性为主角的文，几乎都是毛没长齐就惦记周围那个女人可以收入后宫，上的必定是处女；以女性为主角的，个个觉得自己是芙蓉姐姐，是个男人就肯定爱上自己，歷经艰险無數男人，处女的第一次永远是给第一男主角的。<br />
<br />
&hellip;&hellip;如果说两者有什么本质区别，前者总是恨不得第一时间告别处男，后者总在打处女膜保卫战。&hellip;&hellip;刻薄的说一句：如今的男作者和女作者似乎都走到同一条路上了。&hellip;&hellip;说实在的，看了这些年的文，有这种心得实在有点让人鬱闷。<br />
<br />
<br />
这篇小评，產生於看到作者大人的【一些心裡话】一文，颇有些感慨，虽然我常给七十二编大人投月票，鲜网已经出到第二部，我每集都有买。但也觉得老是潜水看文颇有些无耻。<br />
<br />
我也很明白，作者没有读者鼓励哪来的激情写文？光用VIP的钱，可以激励但不是激情，&hellip;&hellip;文是需要激情来写的，不然就会味如嚼蜡。&hellip;&hellip;所以小弟心裡愧疚，故上来摆摆尾，拋砖引玉，希望激发作者多点激情，让我们读者更幸福些。<br />
<br />
寫了三小時的評，考虑再三，这篇帖子没贴鲜网，还是贴在起点这裡，&hellip;&hellip;我文笔不好，其实我不是大陆人，虽然转了简体，但用词颇不通顺，有些语法可能与各位不同，又是主观论说。&hellip;&hellip;贸然写评，希望我没有将&quot;翡翠&quot;给评论成&quot;砖头&quot;。&hellip;&hellip;若是得罪了作者大人和各位读者，还请不要见怪。以上。</p>
<p>&nbsp;</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=743</link>
      <title><![CDATA[用JQuery的JSONP跨域调用ASP.Net WebService方法]]></title>
      <author>一线风</author>
      <category>学习参考</category>
      <pubDate>2010-5-10 12:22:27</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=743</guid>
      <comments>
              /Blog/Blog.aspx?Id=743#commentbox
            </comments>
      <description><![CDATA[<p>参考文章：<a href="http://bloggingabout.net/blogs/adelkhalil/archive/2009/08/14/cross-domain-jsonp-with-jquery-call-step-by-step-guide.aspx" target="_blank">Cross-domain JSONP with jQuery call step-by-step guide</a></p>
<p><strong>已知的几点：</strong></p>
<ol>
    <li>服务器WebService采用ASP.Net开发，激活GET方式和JSON输入输出（缺省是Post和XML输入输出），详细见后面的代码；</li>
    <li>ASP.NET开发WebService，对于请求方有1个限制，即要求请求的ContentType要设置为Application/json； 参见：<a href="http://weblogs.asp.net/scottgu/archive/2007/04/04/json-hijacking-and-how-asp-net-ajax-1-0-mitigates-these-attacks.aspx" target="_blank">security feature explained here by ScottGu</a>；</li>
    <li>ASP.NET开发WebService，无法识别通过URL传递过来的jsoncallback函数，因此无法返回符合js要求的callback函数调用；</li>
    <li>跨域JS调用，底层只能通过加载&lt;script/&gt;方式调用，完毕的通知，一般有2种方法，1是监控script标签对象的statechange事件，该方法对于浏览器的依赖比较强，可能会出现各种异常情况；2是在加载的js中，执行一个回调函数，将控制权交回到调用方代码，这种方式的稳定性比较好，也就是我们通常说的JSONP方法；在jquery类库中，跨域调用的2种方法都支持，由datatype指定，分别是script和jsonp；</li>
</ol><p><strong>以下的内容可以解决问题，主要思路为</strong></p>
<ol>
    <li>在WebService站点，追加一个HTTPModule，做2件事情：
    <ul>
        <li>替换请求串的ContentType，以欺骗系统的ScriptService代码；</li>
        <li>捕捉请求URL的jsoncallback参数，如果有，则将输出的json内容进行jsonp的封装；</li>
    </ul>
    </li>
    <li>有了这个HTTPModule之后，则按照通用的WebService方式进行开发即可；</li>
</ol>
<p><strong>如何做：</strong></p>
<p>1、实现一个WebService</p>
<pre style="background: #ffffff; color: #000000"><span style="color: #808030">[</span>ScriptService<span style="color: #808030">]</span>
   <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">class</span> JSONP_EndPoint <span style="color: #808030">:</span> System<span style="color: #808030">.</span>Web<span style="color: #808030">.</span>Services<span style="color: #808030">.</span>WebService
   <span style="color: #800080">{</span>
       <span style="color: #808030">[</span>WebMethod<span style="color: #808030">]</span>
       <span style="color: #808030">[</span>ScriptMethod<span style="color: #808030">(</span>UseHttpGet <span style="color: #808030">=</span> <span style="color: #800000; font-weight: bold">true</span><span style="color: #808030">,</span>ResponseFormat <span style="color: #808030">=</span> ResponseFormat<span style="color: #808030">.</span>Json<span style="color: #808030">)</span><span style="color: #808030">]</span>
       <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">string</span> Sum<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">string</span> x<span style="color: #808030">,</span><span style="color: #800000; font-weight: bold">string</span> y<span style="color: #808030">)</span>
       <span style="color: #800080">{</span>
           <span style="color: #800000; font-weight: bold">return</span> x <span style="color: #808030">+</span> y<span style="color: #800080">;</span>
       <span style="color: #800080">}</span>
   <span style="color: #800080">}</span></pre>
<p>按照以上代码，开发需要的方法，开发过程中，不需要考虑jsonp等等相关内容，该DLL的代码只需要考虑业务即可；</p>
<p>2、开发一个自定义的HTTPModule，这个是关键，只需要开发一次，可以作为通用解决方案；</p>
<pre style="background: #ffffff; color: #000000"><span style="color: #800000; font-weight: bold">using</span> System<span style="color: #800080">;</span>
<span style="color: #800000; font-weight: bold">using</span> System<span style="color: #808030">.</span>Collections<span style="color: #808030">.</span>Generic<span style="color: #800080">;</span>
<span style="color: #800000; font-weight: bold">using</span> System<span style="color: #808030">.</span>IO<span style="color: #800080">;</span>
<span style="color: #800000; font-weight: bold">using</span> System<span style="color: #808030">.</span>Linq<span style="color: #800080">;</span>
<span style="color: #800000; font-weight: bold">using</span> System<span style="color: #808030">.</span>Text<span style="color: #800080">;</span>
<span style="color: #800000; font-weight: bold">using</span> System<span style="color: #808030">.</span>Web<span style="color: #800080">;</span>

<span style="color: #800000; font-weight: bold">namespace</span> ContentTypeHttpModule
<span style="color: #800080">{</span>
    <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">class</span> ContentTypeHttpModule <span style="color: #808030">:</span> IHttpModule
    <span style="color: #800080">{</span>
        <span style="color: #800000; font-weight: bold">private</span> <span style="color: #800000; font-weight: bold">const</span> <span style="color: #800000; font-weight: bold">string</span> JSON_CONTENT_TYPE <span style="color: #808030">=</span> <span style="color: #800000">&quot;</span><span style="color: #0000e6">application/json; charset=utf-8</span><span style="color: #800000">&quot;</span><span style="color: #800080">;</span>
        #region IHttpModule Members
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">void</span> Dispose<span style="color: #808030">(</span><span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">void</span> Init<span style="color: #808030">(</span>HttpApplication app<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            app<span style="color: #808030">.</span>BeginRequest <span style="color: #808030">+</span><span style="color: #808030">=</span> OnBeginRequest<span style="color: #800080">;</span>
            app<span style="color: #808030">.</span>ReleaseRequestState <span style="color: #808030">+</span><span style="color: #808030">=</span> OnReleaseRequestState<span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        #endregion
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">void</span> OnBeginRequest<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">object</span> sender<span style="color: #808030">,</span> EventArgs e<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            HttpApplication app <span style="color: #808030">=</span> <span style="color: #808030">(</span>HttpApplication<span style="color: #808030">)</span>sender<span style="color: #800080">;</span>
            HttpRequest resquest <span style="color: #808030">=</span> app<span style="color: #808030">.</span>Request<span style="color: #800080">;</span>
            <span style="color: #800000; font-weight: bold">if</span> <span style="color: #808030">(</span><span style="color: #808030">!</span>resquest<span style="color: #808030">.</span>Url<span style="color: #808030">.</span>AbsolutePath<span style="color: #808030">.</span>Contains<span style="color: #808030">(</span><span style="color: #800000">&quot;</span><span style="color: #0000e6">JSONP-EndPoint.asmx</span><span style="color: #800000">&quot;</span><span style="color: #808030">)</span><span style="color: #808030">)</span> <span style="color: #800000; font-weight: bold">return</span><span style="color: #800080">;</span>
            <span style="color: #800000; font-weight: bold">if</span> <span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">string</span><span style="color: #808030">.</span>IsNullOrEmpty<span style="color: #808030">(</span>app<span style="color: #808030">.</span>Context<span style="color: #808030">.</span>Request<span style="color: #808030">.</span>ContentType<span style="color: #808030">)</span><span style="color: #808030">)</span>
            <span style="color: #800080">{</span>
                app<span style="color: #808030">.</span>Context<span style="color: #808030">.</span>Request<span style="color: #808030">.</span>ContentType <span style="color: #808030">=</span> JSON_CONTENT_TYPE<span style="color: #800080">;</span>
            <span style="color: #800080">}</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">void</span> OnReleaseRequestState<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">object</span> sender<span style="color: #808030">,</span> EventArgs e<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            HttpApplication app <span style="color: #808030">=</span> <span style="color: #808030">(</span>HttpApplication<span style="color: #808030">)</span>sender<span style="color: #800080">;</span>
            HttpResponse response <span style="color: #808030">=</span> app<span style="color: #808030">.</span>Response<span style="color: #800080">;</span>
            <span style="color: #800000; font-weight: bold">if</span> <span style="color: #808030">(</span>app<span style="color: #808030">.</span>Context<span style="color: #808030">.</span>Request<span style="color: #808030">.</span>ContentType <span style="color: #808030">!</span><span style="color: #808030">=</span> JSON_CONTENT_TYPE<span style="color: #808030">)</span> <span style="color: #800000; font-weight: bold">return</span><span style="color: #800080">;</span>
            response<span style="color: #808030">.</span>Filter <span style="color: #808030">=</span> <span style="color: #800000; font-weight: bold">new</span> JsonResponseFilter<span style="color: #808030">(</span>response<span style="color: #808030">.</span>Filter<span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
    <span style="color: #800080">}</span>

    <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">class</span> JsonResponseFilter <span style="color: #808030">:</span> Stream
    <span style="color: #800080">{</span>
        <span style="color: #800000; font-weight: bold">private</span> <span style="color: #800000; font-weight: bold">readonly</span> Stream _responseStream<span style="color: #800080">;</span>
        <span style="color: #800000; font-weight: bold">private</span> <span style="color: #800000; font-weight: bold">long</span> _position<span style="color: #800080">;</span>
        <span style="color: #800000; font-weight: bold">public</span> JsonResponseFilter<span style="color: #808030">(</span>Stream responseStream<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            _responseStream <span style="color: #808030">=</span> responseStream<span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">bool</span> CanRead <span style="color: #800080">{</span> get <span style="color: #800080">{</span> <span style="color: #800000; font-weight: bold">return</span> <span style="color: #800000; font-weight: bold">true</span><span style="color: #800080">;</span> <span style="color: #800080">}</span> <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">bool</span> CanSeek <span style="color: #800080">{</span> get <span style="color: #800080">{</span> <span style="color: #800000; font-weight: bold">return</span> <span style="color: #800000; font-weight: bold">true</span><span style="color: #800080">;</span> <span style="color: #800080">}</span> <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">bool</span> CanWrite <span style="color: #800080">{</span> get <span style="color: #800080">{</span> <span style="color: #800000; font-weight: bold">return</span> <span style="color: #800000; font-weight: bold">true</span><span style="color: #800080">;</span> <span style="color: #800080">}</span> <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">long</span> Length <span style="color: #800080">{</span> get <span style="color: #800080">{</span> <span style="color: #800000; font-weight: bold">return</span> <span style="color: #008c00">0</span><span style="color: #800080">;</span> <span style="color: #800080">}</span> <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">long</span> Position <span style="color: #800080">{</span> get <span style="color: #800080">{</span> <span style="color: #800000; font-weight: bold">return</span> _position<span style="color: #800080">;</span> <span style="color: #800080">}</span> set <span style="color: #800080">{</span> _position <span style="color: #808030">=</span> value<span style="color: #800080">;</span> <span style="color: #800080">}</span> <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">void</span> Write<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">byte</span><span style="color: #808030">[</span><span style="color: #808030">]</span> buffer<span style="color: #808030">,</span> <span style="color: #800000; font-weight: bold">int</span> offset<span style="color: #808030">,</span> <span style="color: #800000; font-weight: bold">int</span> count<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            <span style="color: #800000; font-weight: bold">string</span> strBuffer <span style="color: #808030">=</span> Encoding<span style="color: #808030">.</span>UTF8<span style="color: #808030">.</span>GetString<span style="color: #808030">(</span>buffer<span style="color: #808030">,</span> offset<span style="color: #808030">,</span> count<span style="color: #808030">)</span><span style="color: #800080">;</span>
            strBuffer <span style="color: #808030">=</span> AppendJsonpCallback<span style="color: #808030">(</span>strBuffer<span style="color: #808030">,</span> HttpContext<span style="color: #808030">.</span>Current<span style="color: #808030">.</span>Request<span style="color: #808030">)</span><span style="color: #800080">;</span>
            <span style="color: #800000; font-weight: bold">byte</span><span style="color: #808030">[</span><span style="color: #808030">]</span> data <span style="color: #808030">=</span> Encoding<span style="color: #808030">.</span>UTF8<span style="color: #808030">.</span>GetBytes<span style="color: #808030">(</span>strBuffer<span style="color: #808030">)</span><span style="color: #800080">;</span>
            _responseStream<span style="color: #808030">.</span>Write<span style="color: #808030">(</span>data<span style="color: #808030">,</span> <span style="color: #008c00">0</span><span style="color: #808030">,</span> data<span style="color: #808030">.</span>Length<span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">private</span> <span style="color: #800000; font-weight: bold">string</span> AppendJsonpCallback<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">string</span> strBuffer<span style="color: #808030">,</span> HttpRequest request<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            <span style="color: #800000; font-weight: bold">return</span> request<span style="color: #808030">.</span>Params<span style="color: #808030">[</span><span style="color: #800000">&quot;</span><span style="color: #0000e6">callback</span><span style="color: #800000">&quot;</span><span style="color: #808030">]</span> <span style="color: #808030">+</span><span style="color: #800000">&quot;</span><span style="color: #0000e6">(</span><span style="color: #800000">&quot;</span> <span style="color: #808030">+</span> strBuffer <span style="color: #808030">+</span> <span style="color: #800000">&quot;</span><span style="color: #0000e6">);</span><span style="color: #800000">&quot;</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">void</span> Close<span style="color: #808030">(</span><span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            _responseStream<span style="color: #808030">.</span>Close<span style="color: #808030">(</span><span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">void</span> Flush<span style="color: #808030">(</span><span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            _responseStream<span style="color: #808030">.</span>Flush<span style="color: #808030">(</span><span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">long</span> Seek<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">long</span> offset<span style="color: #808030">,</span> SeekOrigin origin<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            <span style="color: #800000; font-weight: bold">return</span> _responseStream<span style="color: #808030">.</span>Seek<span style="color: #808030">(</span>offset<span style="color: #808030">,</span> origin<span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">void</span> SetLength<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">long</span> length<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            _responseStream<span style="color: #808030">.</span>SetLength<span style="color: #808030">(</span>length<span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
        <span style="color: #800000; font-weight: bold">public</span> <span style="color: #800000; font-weight: bold">override</span> <span style="color: #800000; font-weight: bold">int</span> Read<span style="color: #808030">(</span><span style="color: #800000; font-weight: bold">byte</span><span style="color: #808030">[</span><span style="color: #808030">]</span> buffer<span style="color: #808030">,</span> <span style="color: #800000; font-weight: bold">int</span> offset<span style="color: #808030">,</span> <span style="color: #800000; font-weight: bold">int</span> count<span style="color: #808030">)</span>
        <span style="color: #800080">{</span>
            <span style="color: #800000; font-weight: bold">return</span> _responseStream<span style="color: #808030">.</span>Read<span style="color: #808030">(</span>buffer<span style="color: #808030">,</span> offset<span style="color: #808030">,</span> count<span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
    <span style="color: #800080">}</span>
<span style="color: #800080">}</span></pre>
<p>该DLL编译后，存放到bin目录下，并且修改站点的web.config中的system.web下的httpmodules节点，以注册该HTTPModule。</p>
<pre style="background: #ffffff; color: #000000"><span style="color: #a65700">&lt;</span><span style="color: #5f5035">add</span> <span style="color: #274796">name</span><span style="color: #808030">=</span><span style="color: #0000e6">&quot;</span><span style="color: #0000e6">ContentTypeHttpModule</span><span style="color: #0000e6">&quot;</span>
                    <span style="color: #274796">type</span><span style="color: #808030">=</span><span style="color: #0000e6">&quot;</span><span style="color: #0000e6">ContentTypeHttpModule.ContentTypeHttpModule, ContentTypeHttpModule</span><span style="color: #0000e6">&quot;</span> <span style="color: #a65700">/&gt;</span></pre>
<p>3、客户端实现使用，要依赖jquery库，可选择性的使用json2.js库，代码如下</p>
<pre style="background: #ffffff; color: #000000"><span style="color: #800000; font-weight: bold">function</span> <span style="color: #800000; font-weight: bold">test</span><span style="color: #808030">(</span><span style="color: #808030">)</span> <span style="color: #800080">{</span>
    $<span style="color: #808030">.</span>ajax<span style="color: #808030">(</span><span style="color: #800080">{</span> url<span style="color: #800080">:</span> <span style="color: #0000e6">&quot;http://localhost:1690/JSONP-EndPoint.asmx/Sum&quot;</span><span style="color: #808030">,</span>
    data<span style="color: #800080">:</span> <span style="color: #800080">{</span> x<span style="color: #800080">:</span> JSON<span style="color: #808030">.</span>stringify<span style="color: #808030">(</span><span style="color: #0000e6">&quot;Now i am getting jsop string&quot;</span><span style="color: #808030">)</span><span style="color: #808030">,</span> y<span style="color: #800080">:</span> JSON<span style="color: #808030">.</span>stringify<span style="color: #808030">(</span><span style="color: #0000e6">&quot;2nd param&quot;</span><span style="color: #808030">)</span> <span style="color: #800080">}</span><span style="color: #808030">,</span>
        dataType<span style="color: #800080">:</span> <span style="color: #0000e6">&quot;jsonp&quot;</span><span style="color: #808030">,</span>
        success<span style="color: #800080">:</span> <span style="color: #800000; font-weight: bold">function</span><span style="color: #808030">(</span>json<span style="color: #808030">)</span> <span style="color: #800080">{</span>
            alert<span style="color: #808030">(</span>json<span style="color: #808030">.</span>d<span style="color: #808030">)</span><span style="color: #800080">;  //注意，.d是Asp.Net的ScriptService输出的值内容节点固定名字</span>
        <span style="color: #800080">}</span><span style="color: #808030">,</span>
        error<span style="color: #800080">:</span> <span style="color: #800000; font-weight: bold">function</span><span style="color: #808030">(</span><span style="color: #808030">)</span> <span style="color: #800080">{</span>
            alert<span style="color: #808030">(</span><span style="color: #0000e6">&quot;Hit error fn!&quot;</span><span style="color: #808030">)</span><span style="color: #800080">;</span>
        <span style="color: #800080">}</span>
    <span style="color: #800080">}</span><span style="color: #808030">)</span><span style="color: #800080">;</span>
<span style="color: #800080">}</span></pre>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=742</link>
      <title><![CDATA[你们在怕什么?]]></title>
      <author>一线风</author>
      <category>视角杂谈</category>
      <pubDate>2010-5-5 21:35:04</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=742</guid>
      <comments>
              /Blog/Blog.aspx?Id=742#commentbox
            </comments>
      <description><![CDATA[<p align="center"><strong><font style="background-color: #ffff80" color="#ff0000" size="6" face="黑体">韩寒已被和谐的最新博文：&ldquo;而你们在怕什么?&rdquo;</font></strong></p>
<p><strong><font size="4" face="楷体_GB2312">今天，在一些论坛上，我看见了福建马尾审判三个网友，说真的，我的确完全不知道是怎么回事，于是，我就开始搜索，我先上了*香港，结果就和我搜索胡萝卜和李子一样，页面再也无法打开，于是我上了百度，我只知道有三个网友，因为涉嫌诽谤，被抓了起来。那么他究竟诽谤谁了呢，诽谤了当地公安，我当时就想，这三个人完蛋了，诽谤了当地公安，再由当地法院审理，这审判结果岂他们不是都已经在当地饭店里谈好了。<br />
</font></strong></p><p><strong><font size="4">本着公正的态度，我继续搜索这三个网友究竟是为什么诽谤了ZF，但是线索到这里就断了，我先用了百度知道功能，百度表示不知道，当然，知道了也不会告诉你，于是，我使用了新浪爱问功能，结果爱问不问。最后，我大致知道了故事的内容，这其实是一个很典型的故事，为了防止出现文章过敏的情况，我一概隐去了人物姓名。<br />
<br />
主人公突然死了，家属怀疑是被轮奸致死，提出尸检，尸检的结果是主人公自顾自病死，并非强奸致死。家属怀疑警方包庇罪犯，提出还要尸检，但是相关部门并不配合。家属的情绪很不稳定。三位*人士听闻此事，以死者是被强奸至死的观点，的将此事件做成了视频和文章，转发到国内外论坛。当地公安召开</font></strong><a onclick="javascript:tagshow(event, '%E6%96%B0%E9%97%BB');" href="javascript:;" target="_self"><u><font color="#000000" size="4"><strong>新闻</strong></font></u></a><strong><font size="4">发布会，强调死者是自然病死，随后，参与制作视频发帖等人当地公安机关逮捕，其中主要负责的三人，二审被判有期徒刑一年到两年。<br />
<br />
事情大致上就是这样的，就案情本身，关键是死者到底是怎么死的，这个我不知道，我也没有证据，所以无法站在*者或者ZF的任何一方说事。ZF认为，只要他们<span class="t_tag" nclick="tagshow(event)" href="tag.php?name=%D0%FB%B2%BC">宣布</span>了，这就叫证据，*者认为，只要他们调查了，这也是证据。这件事情我并不了解，在其他众多的*事件中，ZF一定全错么，不一定，*者一定全对么，也不一定。但是为什么ZF永远表现出全错的态势呢？<br />
<br />
其实很多事情其实都是当地ZF自己弄大的。如果他是真的自身突发疾病死亡，那么便让有公信力的地方来尸检，说服家属便是。很多网友说，ZF急需成立廉政公署，来树立公信力，我认为廉政公署没有用，香港很少发生腐败事件，其实并不是拥有了廉政公署这四个字，而是因为廉政公署是独立的这三个字。我认为，大陆现在的国情是不适合成立一个独立的类似廉政公署的机构的，如果一成立然后来真的，那几乎所有公务员及其亲属都嗖一下不见了。但是，大陆最最急需成立的一个部门乃是独立的&ldquo;尸检部&rdquo;，这个尸检部必须拥有向廉政公署一样的独立性和公信力，必要的时候做到电视直播尸检。仔细回想<span class="t_tag" nclick="tagshow(event)" href="tag.php?name=%D6%D0%B9%FA"><a onclick="javascript:tagshow(event, '%E4%B8%AD%E5%9B%BD');" href="javascript:;" target="_self"><u><font color="#000000">中国</font></u></a></span>近几年发生的公众事件，有多少是因为尸检而生。尸检部是维护</font></strong><a onclick="javascript:tagshow(event, '%E7%A4%BE%E4%BC%9A');" href="javascript:;" target="_self"><u><font color="#000000" size="4"><strong>社会</strong></font></u></a><strong><font size="4">稳定的重要部门，因为现在的尸检结果，无论是真的假的，老百姓都不相信。排除这件事情，虽然我认为，很可能不少的尸检结果是正确的，但老百姓的怀疑也不是错误的。一个喜欢先定性再定罪的ZF，其绝招也很容易被老百姓学去，所以说，我们要原谅老百姓动不动就认为自己的亲人是被人害死，而罪犯是被ZF包庇了，尸检是被ZF操纵了。因为在这个社会里，你不讲证据，那我也不讲证据，你不透明，我就猜测，我一猜测，你就说我诽谤，我再追究，你就说这是</font></strong><a onclick="javascript:tagshow(event, '%E5%9B%BD%E5%AE%B6');" href="javascript:;" target="_self"><u><font color="#000000" size="4"><strong>国家</strong></font></u></a><strong><font size="4">机密，我一闹大，你就&hellip;&hellip;你就&hellip;&hellip;你就反而省事了，什么事情都不用做了，自然会有相关部门通知新闻部门这事情不准报道。但是，这一切埋下的都是仇恨的种子。<br />
<br />
所以说，对于地方ZF，这事情其实一开始就很好解决，绝对公正的尸检，如果真的是病死，说服家属，如果真的是被杀的，捉拿凶手。退一步讲，这个事情完全可以放到台面上，公开的去说清楚，大家拿各自的证据来说事，但官方是从来不屑于这么做的，他们认为这样降低了他们的威信。而且我们的官方永远是一开口就置自己于不利，你从来看不到他们坦诚的用我们人类正常交流的语言说话的时刻，永远用没有人性的官腔去对抗老百姓的哭诉。听音乐的朋友都知道，唱腔是多么的重要，一个你讨厌的唱腔，唱什么歌都是错的。<br />
<br />
现在，那位女孩子是怎么死的已经不重要了，更重要的是那三位*者的判决。至于诽谤罪，看来是非判不可了。类似的罪名不能从法律上去诠释，而是要从人情世故上去找结果。因为面子对于ZF是很重要的，人家都关了你这么长时间了，尤其是因为这个理由，现在把你放出来，你法院是能得到喝彩，但是人家公安以后怎么混，都在一个县城里，抬头不见低头见，办公室不见桑拿见的，这见面了还怎么相处。其实这么多年，大家都误会了人民法院的意思，人民法院并不是指属于人民的并为人民服务的法院，而是指只负责解决人民与人民之间的矛盾的法院。<br />
<br />
这三位替他人*的网友，被判了一年到两年以后，很多网友认为，这件事情代表了互联网的黑暗时期将要到来，代表了*人士将要遭到打击报复，代表了</font></strong><a onclick="javascript:tagshow(event, '%E7%BD%91%E7%BB%9C');" href="javascript:;" target="_self"><u><font color="#000000" size="4"><strong>网络</strong></font></u></a><strong><font size="4">的监督将要受到取缔和法办，代表了言论自由的彻底消失，我认为其实这些都不是，小小的一个县城的公检法，你不能把人家想的那么深邃，其实这件事情只代表了一个意义，传达了一个讯息，那就是&mdash;&mdash;让你见识见识我的厉害。<br />
<br />
是的，让你见识见识我的厉害。我们见识了，我们都很害怕，但是我们也不知道，你们都在害怕些什么。</font></strong></p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=741</link>
      <title><![CDATA[新版<苏乞儿>影 评]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-5-3 23:05:54</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=741</guid>
      <comments>
              /Blog/Blog.aspx?Id=741#commentbox
            </comments>
      <description><![CDATA[<p>新版&lt;苏乞儿&gt;影 评 <br />
<br />
1. <br />
<br />
我又在周二走进了电影院，因为根据我的经验，看中国电影，周二半价日去看是最合理的选择。 <br />
我选择看《苏乞儿》的原因是冥冥中冲着对袁和平的欣赏而买了票，却没有注意袁和平的名字前不是&ldquo;武术指导&rdquo;而是&ldquo;导演&rdquo;二字。 <br />
<br />
2. <br />
<br />
我很喜欢这部电影，其中有一个原因是： <br />
<br />
这片子配的英文字幕太好了，初中词汇，而且简明扼要，我全看懂了。 <br />
<br />
3. <br />
<br />
作为男一号，赵文卓的嗓音相对土鳖了一些。 <br />
<br />
不过乞丐嘛，就随意了。</p><p>4. <br />
<br />
看到影片很往后很往后，苏灿才从武将转型到少爷转型到野人再转型终于成为了乞丐。 <br />
<br />
5. <br />
<br />
打戏挺好看的，有很多圣斗士，还出现了女圣斗士。 <br />
<br />
她长得挺漂亮。 <br />
<br />
胸部很大，制服很厚。 <br />
<br />
三年前她很犀利，三年后她没有嫁出去。 <br />
<br />
6. <br />
<br />
男二号挺帅的。 <br />
<br />
他用五年的时间修行五毒神功，有效美白了全身肌肤，还形成了魅红色的天然眼妆。 <br />
<br />
相比起来，《风云2》里面聂风的入魔美白法固然有效，却不能自然，眼睛还成那样了。 <br />
<br />
7. <br />
<br />
周迅出来的时候让我很惊喜，因为我不知道这部电影里有她，而且是女一号。 <br />
<br />
所以她死的时候我也没什么遗憾。 <br />
<br />
8. <br />
<br />
杨紫琼出来的时候让我很惊喜，因为我不知道这部电影里有她。 <br />
<br />
所以后来明白她其实只是个打酱油的，我也没什么遗憾。 <br />
<br />
至于她为什么不结婚而甘心做一个剩女，这点我便也没有去追究。 <br />
<br />
9. <br />
<br />
闫妮出来的时候让我很惊喜，因为我不知道这部电影里有她。 <br />
<br />
所以后来明白她又只是个打酱油的，我也没什么遗憾。 <br />
<br />
至于她为什么一个女人却在看店是不是又做了寡妇，这点我便也没有去追究。 <br />
<br />
10. <br />
<br />
周杰伦出来的时候让我很震惊，因为我不知道这部电影里有他。 <br />
<br />
所以后来明白他只是主角脑补和精分出来的时候，我大吃一惊目瞪口呆。 <br />
<br />
随后，我安慰自己是编剧太高明了，执意要把苏乞儿刻画为精分教的创始人，<br />
这分明只是一部现实主义传记巨作而已，我等屁民竟然不能及早领悟，沉迷于精分的世界，走火入魔，实在愚钝。 <br />
<br />
11. <br />
<br />
袁烈见到苏灿就脱衣露出了Bra，可惜苏灿没有珍惜这个机会。 <br />
<br />
三年后他们又有一次机会相见，苏灿终于激动地扯掉了袁烈的Bra，可惜袁烈被扯死了。 <br />
<br />
这个故事告诉了我们许多关于胸部保养和内衣选择的道理。 <br />
<br />
12. <br />
<br />
袁烈死了以后，我以为电影结束了准备要走，没想到还有第二部分，这让我很惊喜。 <br />
<br />
八年前我看过一部叫《我的野蛮女友》的电影，也是这样的，这一定是在向韩片致敬啊！ <br />
<br />
13. <br />
<br />
看到擂台赛那里，我想到了《霍元甲》。 <br />
<br />
我没看过《霍元甲》，但是我看过《霍元甲》的海报，我觉得两部电影之间可能有某种奇妙的联系。 <br />
<br />
后来发现两部电影的编剧是同一个人，这又让我很惊喜，中国电影果然是最有趣的。 <br />
<br />
14. <br />
<br />
苏灿的儿子画技了得，可惜没有发挥的余地，电影里铺垫了那么久却也没有再提起，只让他做一个跟班添乱的少年，还成了小乞丐。 <br />
<br />
我很是为他伤感。 <br />
<br />
15. <br />
<br />
苏灿打那些外国大块头的时候，跳起了霹雳舞，主角施展了精彩的大地板动作，配着非主流的发型和嘻哈服，帅死了。 <br />
<br />
这招我从来没有在武打片中看到有人这么频繁地使用，我又油然而生一种惊喜感。 <br />
<br />
霹雳舞原来是中国人发明的！ <br />
<br />
16. <br />
<br />
影片最后苏乞儿再也没有行乞，只在如画山水间一家人幸福地生活在一起。 <br />
<br />
一家人包括周迅。(主角施放脑补) <br />
<br />
从编剧传达的意图来看，偶尔可能也会包括周杰伦。(主角施放精分) <br />
<br />
17. <br />
<br />
片尾字幕刚出影厅灯光亮起示意大家滚蛋的时候，我情不自禁呼出一句： &ldquo;这电影有什么教育意义？&rdquo; <br />
<br />
周围有人窃笑。 <br />
<br />
18. <br />
<br />
出了影厅我又看了一下海报，发现有个熟脸叫郭晓冬，我很惊喜，因为我一直觉得电影里有个人很眼熟，原来是他。 <br />
<br />
<br />
为了向编剧致敬，本文后半部分属于免费附赠。 <br />
<br />
袁和平干了一辈子武术指导，他想当导演，主要就是想拍武戏，实话说拍得挺不错的。 <br />
<br />
赵文卓干了一辈子二流打星，当了男一号，主要就是打出精彩，实话说打得挺不错的。 <br />
<br />
那么最大的问题很明显就是剧情了。 <br />
<br />
用最基本的要求来审视一下本片： <br />
<br />
首先，片名是人名，所以这部电影理应当是个传记片；<br />
其次，大家都知道苏乞儿是个武林高手，所以这部电影应该是个动作片，为了突出主角的武功高强正义伟岸，应该有个高强邪恶的反派；<br />
再次，为了突出主角和反派之间的矛盾，以及片尾一场必须的终极对决，主角与反派之间的仇恨应该是电影的主线，脉络清晰，步步为营，引人入胜。 <br />
<br />
马格比竟然一条都没做到&mdash;&mdash;首先苏灿就一身硬功夫(一夫当百)、胸无大志(认为开宗立派就是学武最高境界)、老婆孩子热炕头(和周迅结婚生娃)人生圆满了，好一会才揭示了苏灿和袁烈的恩怨情仇。袁烈的复仇太突然(刚说了有机会要报答苏灿，字幕一过镜头一切直接做了美白杀了苏父)，杀父之仇在影片开始没有铺垫，突然之间冒出这么一出简直令人难以消化。袁英和苏灿之间的爱情缺乏铺垫(夫妻之情还像那么回事，迅哥演技高也我爱你)，母子之情倒是刻画得可圈可点(孩子到后来画周迅的画技竟然已然牛逼轰天了)，可惜这孩子的角色仔细一想有点多余。更别说周杰伦的出场和周杰伦的精分身份以及周杰伦普通话有多雷人。寻子复仇一直被渲染为电影的主线，却在电影中间戛然而止。于是有了第二幕，第二幕在剧情方面身负深化主题的重任，因为这部分剧情横空出现，唯一有可能让观众有带入感的是急速升华主角的人格，以及必须带来比前一幕对决更精彩的打斗，按照常理，应该向《黄飞鸿》系列那样，把主角与反派之间的私人恩怨悄然转化为特殊时代中华民族与列强之间的民族矛盾，营造主角武功盖世，tianchao威武不可侵犯之势。可惜主角只是在赌场宰杀了几个白人死胖子，动机只是为了救兄弟护儿子，然后在中国最需要他的时候归隐山林，把武术家救历史的重任无私奉献给了后来的黄飞鸿、霍元甲、叶问和陈真。 <br />
<br />
<br />
所以后来我们了解到的苏乞儿只是个爱老婆爱儿子，自己有些才华可惜胸无大志，一受打击就可能一蹶不振，爱喝酒爱幻想的宅男，比灰太狼也强不到哪里。 <br />
<br />
中国编剧，已经和中国足球一样，开始饰演喜剧演员的角色。(为什么我有生以来第一次吐槽国足，国足当天就3：0胜韩国了？)一般来讲，群众对编剧的要求是该高一点，但是编剧对自己的要求只是薪水高一点，他们自知既然提高不了自己的编剧水平，就企图把观众们的审美需求逼得低一点，以为自己可以就这样混下去。 <br />
<br />
我仰天长啸and长笑，一星给袁和平，一星给赵文卓，一星给迅哥，一星给David Carradine(去年6月猝死，阿门)，一星给铁Bra(你没看错)。</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=740</link>
      <title><![CDATA[阳神-刺客联盟-勇气词]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-4-27 15:16:40</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=740</guid>
      <comments>
              /Blog/Blog.aspx?Id=740#commentbox
            </comments>
      <description><![CDATA[这是一本不错的书，至于哪儿不错嘛，嘿嘿，我不能多说的。大家自已去看吧。<p>&nbsp;&nbsp;&nbsp; &nbsp;&ldquo;刺客之道，以寡敌众，是勇气！&rdquo;</p>
<div>&nbsp;&nbsp; &nbsp;&ldquo;刺客之道，杀身成仁，是勇气！&rdquo;</div>
<div>&nbsp;&nbsp; &nbsp;&ldquo;刺客之道，三尺直剑，五步之内，血染金殿，皇者畏惧，是为勇气！&rdquo; <span class="Apple-tab-span" style="white-space:pre">			</span></div>
<div><span class="Apple-tab-span" style="white-space:pre">		</span>&ldquo;易今日祭祀上古刺道，勇者之道，愿天下之人，都有勇者之心！则上位者为之惴惴，不敢胡为！皇者为之顾忌，不敢鱼肉！肉食者为之寝食难安，不敢胡作非为！此则天下无不公之事。易何德何能，今日得以在刺客堂之前，来祭祀勇者刺道，无以为表，唯羡上一片赤诚，愿刺道世世代代，永久流传，万世为之不替。 &nbsp; &nbsp;&rdquo;</div>
<div>&nbsp;&nbsp; &nbsp;&ldquo;刺道不灭，勇者不灭。勇者不灭，人道永昌&rdquo;</div>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=739</link>
      <title><![CDATA[延时至调用时获取被反序列化数据的类型的实现]]></title>
      <author>一线风</author>
      <category>工作相关</category>
      <pubDate>2010-4-7 15:43:13</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=739</guid>
      <comments>
              /Blog/Blog.aspx?Id=739#commentbox
            </comments>
      <description><![CDATA[<p>应用场景：<br />
&nbsp;&nbsp;设计一个任务调度系统，配置信息以XML行式保存在Tasks.config的配置文件里，该配置里不止一个任务。不同的任务，会有不同配置信息与设定。<br />
&nbsp;<br />
解决方案1：使用XPath直接读<br />
&nbsp;优点：1. 直接；2. 灵活(配置可以千变万化)<br />
&nbsp;缺点：1. 不友好，要写一堆的读取XML数据的方法，每次有新的任务时都要重写不同的XML片断；2. 容易出错，很有可能因为写了一个错误的节点属性名称而得不到数据<br />
&nbsp;<br />
解决方案2：使用对象序列化成XML文档<br />
&nbsp;缺点：1. 反序列化配置时必须有定义好的类型。<br />
&nbsp;优点：1. 友好，XML里的数据直接反序列化成对象的属性；2. 不容易出错，为什么呢？你肯定要先定义好类型序列化后使用，你别告诉我你是手写XML的；<br />
&nbsp;</p><p>&nbsp;现在的问题是设计一个方法，解决它的缺点。就算有不同的配置我也能给你反序列化出来。那么抽出相同的部分，这部分不是我们关注的重点了。我们关注的是，如何重现不同的配置XML为实例。因为所有的对象都是继承自object的，那么，我们把扩展部分的类型就设定为object好了。经过测试发现，反序列化后的object是XmlNode[]数组。那我们要做的就是把这个XmlNode[]数组给转换为文本，然后再客户端使用的时候，将文本与定义好的类型进行反序列化。<br />
&nbsp;<br />
代码原型：</p>
<p>&nbsp;</p>
<div class="codeText">
<div class="codeHead">C#代码</div>
<ol class="dp-c">
    <li class="alt"><span><span>[Serializable, &nbsp;&nbsp;</span></span></li>
    <li><span>&nbsp;&nbsp;XmlRoot(ElementName&nbsp;=&nbsp;</span><span class="string">&quot;configuration&quot;</span><span>)]&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;XmlConfig &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;扩展 </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;/summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[XmlElement(</span><span class="string">&quot;extend&quot;</span><span>)] &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">object</span><span>&nbsp;Extend&nbsp;{&nbsp;</span><span class="keyword">get</span><span>;&nbsp;</span><span class="keyword">set</span><span>;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;获取已设定的扩展类型实例 </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;/summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;typeparam&nbsp;name=&quot;T&quot;&gt;扩展的类型&lt;/typeparam&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;returns&gt;扩展类实例&lt;/returns&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;T&nbsp;GetExtend&lt;T&gt;()&nbsp;where&nbsp;T:</span><span class="keyword">class</span><span>&nbsp; &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;Serializer.XmlDeserializerFormText&lt;T&gt;(ExtendRawXml); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;Extend扩展的Xml片断 </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;/summary&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">///&nbsp;&lt;returns&gt;&lt;/returns&gt; </span><span>&nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">protected</span><span>&nbsp;</span><span class="keyword">string</span><span>&nbsp;ExtendRawXml &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">get</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;nodes&nbsp;=&nbsp;Extend&nbsp;</span><span class="keyword">as</span><span>&nbsp;XmlNode[]; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(nodes&nbsp;==&nbsp;</span><span class="keyword">null</span><span>&nbsp;||&nbsp;nodes.Length&nbsp;==&nbsp;0) &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;</span><span class="string">&quot;&lt;extend&nbsp;/&gt;&quot;</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;w&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;StringWriter(); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;XmlWriter&nbsp;writer&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;XmlTextWriter(w); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.WriteStartElement(</span><span class="string">&quot;extend&quot;</span><span>); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">foreach</span><span>&nbsp;(var&nbsp;node&nbsp;</span><span class="keyword">in</span><span>&nbsp;nodes) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.WriteRaw(node.OuterXml); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.WriteEndElement(); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.Close(); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;w.ToString(); &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;[Serializable, &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;XmlRoot(</span><span class="string">&quot;extend&quot;</span><span>)] &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;MyExtend &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">int</span><span>&nbsp;Id&nbsp;{&nbsp;</span><span class="keyword">get</span><span>;&nbsp;</span><span class="keyword">set</span><span>;&nbsp;} &nbsp;&nbsp;</span></li>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">string</span><span>&nbsp;Name&nbsp;{&nbsp;</span><span class="keyword">get</span><span>;&nbsp;</span><span class="keyword">set</span><span>;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
</ol>
</div>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=738</link>
      <title><![CDATA[终于把我的S1给刷了~]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-3-28 14:22:40</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=738</guid>
      <comments>
              /Blog/Blog.aspx?Id=738#commentbox
            </comments>
      <description><![CDATA[<p>昨天晚上加班回来后，想到手机用了一年多了，也该刷了~</p>
<p>刷之前当然是解锁了，这可是最重要的一步。不过解锁的时候一直是不成功，提示rom文件损坏。这个是乍回事呢？来来回回折腾了4~6次。还是不成功，我的系统用了太久了，不是要硬还原一下？好吧，&ldquo;GHost&rdquo;（就是按住通话和挂断捅PP，然后再按中间的键就行了）。再次解锁成功。HOHO......</p>
<p>&nbsp;</p>
<p>刷Radio很顺利，等刷OS的时候提示ROM损坏！汗，乍又是这样？ 换个ROM试一下成功了。不过那个是超级的干净，干净的不知乍用好。就又刷成了一个4MDIY版的。</p>
<p>进入新系统后果然是超快呀。再也不是原来那个要死不活的样子了。</p>
<p>不过开机时感觉和原来差不多。</p><p>不过现在还是有问题：</p>
<p>1. 自带的UCWEB版本是6.1的，这个我没有用。就没有管它了</p>
<p>2. IP拨号有问题。选不中，重启后还是老样子。今天安了S1自带的IP拨号就能用了</p>
<p>3. 充电有问题，信号灯不变。</p>
<p>其它的回头发现了再加吧。</p>
<p>有可能的话把OS解开自定制一下算了。</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=737</link>
      <title><![CDATA[无耻的淘宝，骗子的后台。]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-3-26 20:42:31</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=737</guid>
      <comments>
              /Blog/Blog.aspx?Id=737#commentbox
            </comments>
      <description><![CDATA[<p>还是上次买手机充值卡的事。淘宝没经任何协调，直接把我的钱转给了骗子。我一个小小的买家能做出做什么反击？不是还有个互评吗？<strong><font color="#ff0000">我的评价，我连看都没有看到就被淘宝&ldquo;急时&rdquo;的给删除了</font></strong>。骗子不就是给了点钱你吗？就把骗子当爹来供着？！！！</p>
<p>到315网上去投诉也没有用。做个中国人真难。要精通所有的事情。出了事了就算你背。没有任何组织，单位，&ldquo;机关&rdquo;给你那怕一点点的支持。</p>
<p>再此只想发一下牢骚，这是我的地盘，这个我总能说吧？！！！ 其实真的说不准~~ 大家都明白~~~。</p>
<p>&nbsp;</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=736</link>
      <title><![CDATA[淘宝越来越不像话了~明知是骗子的店竟然也不关。还把我的钱给转给骗子。]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2010-3-14 22:08:42</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=736</guid>
      <comments>
              /Blog/Blog.aspx?Id=736#commentbox
            </comments>
      <description><![CDATA[<p><a href="http://rate.taobao.com/user-rate-170038320--detailed%7C1--goodNeutralOrBad%7C-1--timeLine%7C-210--receivedOrPosted%7C0--buyerOrSeller%7C0.htm#RateType">http://rate.taobao.com/user-rate-170038320--detailed%7C1--goodNeutralOrBad%7C-1--timeLine%7C-210--receivedOrPosted%7C0--buyerOrSeller%7C0.htm#RateType</a></p>
<p>就是这个骗子卖家。这么多人给差评的。</p>
<p>我TMD的也是鬼迷心窍。看到商品介绍说是充100送30.结果我一拍后就说要去yllong.cn域名下的一个子目录充值。结果不用多说了。</p>
<p>要求退款。结果TB是直接把我的钱给转给那个骗子了。连问我的意见也没有。</p>
<p>TB现在是NB了。人多了。买家的利益起接无所谓了。</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=734</link>
      <title><![CDATA[新增皮肤--爱的记忆]]></title>
      <author>一线风</author>
      <category>相关作品</category>
      <pubDate>2009-12-11 15:38:15</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=734</guid>
      <comments>
              /Blog/Blog.aspx?Id=734#commentbox
            </comments>
      <description><![CDATA[<p>这个是专为我和老婆的新婚制作的。所以就不另发布了，想要的朋友 你另存一下再改吧！ 嘿嘿~~~<br />
<img border="0" alt="请柬" src="/Upload/2009_12/11_181754_2536637_thumb.jpg" /><br />
快要回家结婚了~~~~ 2010.1.2 号，有回来的朋友要来参加哟~~</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=732</link>
      <title><![CDATA[一位软件工程师的7年总结:借此导航自己人生]]></title>
      <author>一线风</author>
      <category>学习参考</category>
      <pubDate>2009-12-3 17:12:13</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=732</guid>
      <comments>
              /Blog/Blog.aspx?Id=732#commentbox
            </comments>
      <description><![CDATA[<p>1、分享第一条经验：&ldquo;学历代表过去、能力代表现在、<strong><font color="#ff0000">学习力代表未来</font></strong>。&rdquo;&nbsp; <br />
&nbsp;&nbsp;&nbsp; 其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要：&ldquo;重要的道理明白太晚将抱憾终生！&rdquo;所以放在每一条，让刚刚毕业的朋友们早点看到哈！</p>
<p>2、一定要确定自己的<strong><font color="#ff0000">发展方向</font></strong>，并<font color="#ff0000">为此目的制定可行的计划</font>。<br />
&nbsp;&nbsp;&nbsp; 不要说什么，&ldquo;我刚毕业，还不知道将来可能做什么？&rdquo;，&ldquo;跟着感觉走，先做做看&rdquo;。因为，这样的观点会通过 你的潜意识去暗示你的行为无所事事、碌碌无为。<u><font color="#800080">一直做技术，将来成为专家级人物？向管理方向走，成为职业经理人？先熟悉行业和领域，将来自立门户？</font></u>还是先 在行业里面混混，过几年转行做点别的？这很重要，它将决定你近几年、十年内&ldquo;做什么事情才是在做正确的事情！&rdquo;。</p>
<p>&nbsp;</p><p><br />
3、软件开发团队中，技术不是万能的，但没有技术是万万不能的！<br />
&nbsp;&nbsp;&nbsp;&nbsp; 在技术型团队中，技术与人品同等重要，当然长相也比较重要哈，尤其在MM比较多的团队中。在软件项目团队 中，技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码，还是产品管理、测试、文档、实施、维护，多少你都要有技术基础。算我孤 陋寡闻，我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目，哪怕就一个，也没有看到。倒是曾经看到过一个&ldquo;高学历的牛人&rdquo;（非 技术型）带一堆人做完过一个项目，项目交付的第二天，项目组成员扔下一句&ldquo;再也受不了啦！&rdquo;四分五裂、各奔东西。那个项目的&ldquo;成功度&rdquo;大家可想而知了。</p>
<p><br />
4、<strong><font color="#ff0000">详细制定自己软件开发专业知识学习计划，并注意及时修正和调整（软件开发技术变化实在太快）。</font></strong><br />
&nbsp;&nbsp;&nbsp;&nbsp; 请牢记：&ldquo;如果一个软件开发人员在1、2年内都没有更新过自己的知识，那么，其实他已经不再属于这个行业了。&rdquo;不要告诉自己没有时间。来自时间管理领域的著名的&ldquo;三八原则&rdquo;告诫我们：另外的那8小时如何使用 将决定你的人生成败！本人自毕业以来，平均每天实际学习时间超过2小时。</p>
<p><br />
5、书籍是人类进步的阶梯，对软件开发人员尤其如此。<br />
&nbsp;&nbsp;&nbsp;&nbsp; 书籍是学习知识的最有效途径，<em><font color="#339966">不要过多地指望在工作中能遇到&ldquo;世外高人&rdquo;，并不厌其烦地教你。</font></em>对于花钱买书，我个人经验是：<strong><font color="#ff9900">千万别买国内那帮人出的书</font></strong>！我买的那些 家伙出的书，100%全部后悔了，无一本例外。更气愤的是，这些书在二手市场的地摊上都很难卖掉<strong><font color="#ff0000">。&ldquo;拥有书籍并不表示拥有知识；拥有知识并不表示拥有技 能；拥有技能并不表示拥有文化；拥有文化并不表示拥有智慧。&rdquo;只有将书本变成的自己智慧，才算是真正拥有了它。</font></strong></p>
<p><br />
6、<strong><font color="#ff0000">不要仅局限于对某项 技术的表面使用上，哪怕你只是偶尔用一、二次。<br />
</font></strong>&nbsp;&nbsp;&nbsp; &nbsp;&ldquo;对任何事物不究就里&rdquo;是任何行业的工程师所不应该具备的素质。开发Windows应用程序，看看 Windows程序的设计、加载、执行原理，分析一下PE文件格式，试试用SDK开发从头开发一个Windows应用程序；用VC＋＋、</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; Delphi、Java、.Net开发应用程序，花时间去研究一下MFC、VCL、J2EE、.Net它们框架设计或者源码；除了会用J2EE、 JBoss、Spring、Hibernate等等优秀的开源产品或者框架，<strong><font color="#008080">抽空看看大师们是如何抽象、分析、设计和实现那些类似问题的通用解决方案的</font></strong>。 试着这样做做，你以后的工作将会少遇到一些让你不明就里、一头雾水的问题，因为，很多东西你&ldquo;知其然且知其所以然&rdquo;！</p>
<p><br />
7、<font color="#800080">在一种语言上编程，但别为其束缚了思想。</font><br />
&nbsp;&nbsp;&nbsp;&nbsp; &ldquo;代码大全&rdquo;中说：&ldquo;深入一门语言编程，不要浮于表面&rdquo;。深入一门语言开发还远远不足，任何编程语言的存在都有其自身的理由， 所以也没有哪门语言是&ldquo;包治百病&rdquo;的&ldquo;灵丹妙药&rdquo;。编程语言对开发人员解决具体问题的思路和方式的影响与束缚的例子俯拾皆是。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 我的经验是：用面对对象工具开发某些关键模块时，为什么不可以借鉴C、C51、汇编的模块化封装方式？用传统的桌面开发工具（目前主要有VC++、Delphi） 进行系统体统结构设计时，为什么不可以参考来自Java社区的IoC、AOP设计思想，甚至借鉴像Spring、Hibernate、JBoss等等优秀 的开源框架？在进行类似于实时通信、数据采集等功能的设计、实现时，为什么不可以引用来自实时系统、嵌入式系统的优秀的体系框架与模式？为什么一切都必须 以个人、团队在当然开发语言上的传统或者经验来解决问题？？？&ldquo;他山之石、可以攻玉&rdquo;。</p>
<p><br />
<strong><font color="#ff0000" size="4">8、养成总结与反思的习惯，并有意识地提炼日常工作成果，形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。</font></strong><br />
&nbsp;&nbsp;&nbsp;&nbsp; 众所周知，对软件开发人员而言，有、无经验的一个显著区别是：无经验 者完成任何任务时都从头开始，而有经验者往往通过重组自己的可复用模块、类库来解决问题（其实这个结论不应该被局限在软件开发领域、可以延伸到很多方 面）。这并不是说，所有可复用的东西都必须自己实现，别人成熟的通过测试的成果也可以收集、整理、集成到自己的知识库中。但是，最好还是自己实现，这样没 有知识产权、版权等问题，关键是自己实现后能真正掌握这个知识点，拥有这个技能。</p>
<p><br />
<strong><font size="4">9、理论与实践并重，内外双修。</font></strong><br />
&nbsp;&nbsp;&nbsp; 工程师的内涵是：以工 程师的眼光观察、分析事物和世界。一个合格的软件工程师，是真正理解了软件产品的本质及软件产品研发的思想精髓的人（个人观点、欢迎探讨）。掌握软件开发 语言、应用语言工具解决工作中的具体问题、完成目标任务是软件工程师的主要工作，但从软件工程师这个角度来看，这只是外在的东西，并非重要的、本质的工 作。学习、掌握软件产品开发理论知识、软件开发方法论，并在实践中理解、应用软件产品的分析、设计、实现思想来解决具体的软件产品研发问题，才是真正的软 件工程师的工作。站在成熟理论与可靠方法论的高度思考、分析、解决问题，并在具体实践中验证和修正这些思想与方式，最终形成自己的理论体系和实用方法论。</p>
<p><br />
<strong><font face="Verdana" size="4">10、心态有多开放，视野就有多开阔。</font></strong> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 不要抱着自己的技术和成果，等到它们都已经过时变成垃圾了，才拿出来丢人现眼。请及时发布自己的研究成果：开发的 产品、有创意的设计或代码，公布出来让大家交流或者使用，你的成果才有进化和升华的机会。想想自己2000年间开发的那些Windows系统工具，5、6 年之后的今天，还是那个样子，今天流行的好多Windows系统工具都比自己的晚，但进化得很好，且有那么多用户在使用。并且，不要保守自己的技术和思 想，尽可能地与人交流与分享，或者传授给开发团队的成员。&ldquo;与人交换苹果之后，每个人还是只有一个苹果；但交换思想之后，每个人都拥有两种思想&rdquo;，道理大 家都懂，但有多少人真正能做到呢？</p>
<p><br />
<strong><font size="4">11、尽量参加开源项目的开发、或者与朋友共同研制一些自己的产品，千万不要因为没有钱赚而不做。</font></strong><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 网络早已不再只是&ldquo;虚拟世界&rdquo;，网上有很多的开源项目、合作开发项目、外包项目，这都是涉猎工作以外的知识的绝好机会，并且能够结识更广的人缘。不要因为工 作是做ERP，就不去学习和了解嵌入式、实时、通信、网络等方面的技术，反过来也是一样。如果当别人拿着合同找你合作，你却这也不会，那也不熟时，你将后 悔莫及。</p>
<p><strong><font size="4">12、书到用时方恨少，不要将自己的知识面仅仅局限于技术方面。</font></strong> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 诺贝尔经济学奖得主西蒙教授的研究结果表明：&ldquo;对于一个有一定基础的人来说，他只要真正肯下功夫，在6个月内就可以掌握任何一门学问。&rdquo;教育心理学界为感谢西蒙教授的研究成果，故命名为西蒙学习法。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 可见，掌握一门陌生的学问远远没有想象的那么高难、深奥。多方吸取、广泛涉猎。极力夯实自己的影响圈、尽量扩大自己的关注圈。财务、经济、税务、管理等等知识，有空花时间看看，韬光养晦、未雨绸缪。</p>
<p><br />
13、本文的总结与反思：<br />
&nbsp;<font color="#800080" size="4">A：不要去做技术上的高手，除非你的目标如此。虽然本文是关于提高软件开发知识的建议，做技术的高手是我一向都不赞同的。你可以提高自己的专业知识，但能胜任工作即止。<br />
&nbsp;B：提高软件知识和技术只是问题的表面，<strong><font color="#ff0000">本质是要提高自己认识问题、分析问题、解决问题的思想高度</font></strong>。软件专业知识的很多方法和原理，可以很容易地延伸、应用到生活的其它方面。<br />
&nbsp;C：在能胜任工作的基础上，立即去涉猎其它领域的专业知识，丰富自己的知识体系、提高自己的综合素质，尤其是那些目标不在技术方面的朋友。</font></p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=731</link>
      <title><![CDATA[今天用别人的webform分页控件，遇到的一个怪问题。]]></title>
      <author>一线风</author>
      <category>工作相关</category>
      <pubDate>2009-12-3 17:00:01</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=731</guid>
      <comments>
              /Blog/Blog.aspx?Id=731#commentbox
            </comments>
      <description><![CDATA[<p>控件的当前页PageIndex是在控件的PageChanged事件后改变的，所以传入底层时，不能在Page_Load里写，在这儿写的时候PageChanged方法还没有执行。是获取不到正确的PageInddex的。但是我把底层的查询置于PageChanged后又发现PageIndex始终是1 ，死也不变，搞了一两个小时，最后还是问老黄，他看了会儿才说这个控件是必须不能在所在form里使用enableviewstate属性的，不管是true还是false，而我是一开始就关闭了这个viewstate，最不喜欢的就是这个东东了。</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=729</link>
      <title><![CDATA[地球不是人类的，但是人类却是地球的。--2012观后感]]></title>
      <author>一线风</author>
      <category>游戏娱乐</category>
      <pubDate>2009-11-24 10:03:13</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=729</guid>
      <comments>
              /Blog/Blog.aspx?Id=729#commentbox
            </comments>
      <description><![CDATA[<p>上周未看完了2012，确实不错。值得一看。一直想写一下，不过工作比较忙，加上最近事情也比较多，就一直没有写，但是刚才看到CB上的一个砖家的言论后就不得不写一下了！</p>
<p><img alt="01" border="0" src="/Upload/2009_11/24_100237_3886646_thumb.jpg" /></p>
<p>&nbsp;</p><p>原文地址：<a href="http://www.cnbeta.com/articles/98455.htm">http://www.cnbeta.com/articles/98455.htm</a><br />
砖家给出了4个理由来反驳2012是世界未日，可是我发现它写的东东，它自已都不信。都没有明确和肯定的结论。还有第一个的比较，太扯淡了。地磁对人的影响，是可以不计，它真正影响的是太阳的高能粒子，将这些高能粒子给转到南北两极，而不是直接投射到地个上，如果要造一个这样效果的磁铁，你要造多大的磁铁才能做 到这个效果？</p>
<p>并且2012年太阳太黑子确实会大规模的爆发，这有多少影响知道吗？ 它们会影向暴露在阳光下人们的皮肤，它们会影响作物的生长，它们会使卫星能通信受到非常严重的影响。这些还不够吗？ 假设突然出现不可预测的大爆发，大阳风大量的的能量来到地球，加速两极冰盖的融化，这些还不够吓人的吗？</p>
<p>人类在其历史的短短的进程中，像病毒一样，把地球给搞的千疮百孔的。地球呢？现在已经开始显示出她自我调节能力了，近年来的未明的病毒，如果调节不过来，那真的是未日不远！ 我相信地球随咳嗽一下，抖几下身子，那结果可想而知了。人类能通过这弹那弹来毁灭的只能是人类，而不是地球。</p>
<p>如果，2012真的是未日，那也是人类的未日，不是地球的未日。</p>
<p>如果，2012真的是未日，你会去做什么？在这两年内。</p>
<p>【附：为什么现在GOV一直在不停洗老百姓的米？我可以认为是在制做诺亚方舟不？】</p>
<p>胡言乱语，一家之言，如明雷同，那也活该！</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=728</link>
      <title><![CDATA[韩寒:我接受谷歌的六十美元 欢迎谷歌扫描我的图书]]></title>
      <author>一线风</author>
      <category>视角杂谈</category>
      <pubDate>2009-11-23 9:19:50</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=728</guid>
      <comments>
              /Blog/Blog.aspx?Id=728#commentbox
            </comments>
      <description><![CDATA[<p style="text-indent: 2em">我欢迎谷歌图书馆扫描我的每一本图书，并欣然接受在显示目录和摘要下60美元一本的条件。之前对于谷歌的指责是因为我在接受采访时受到了某些媒体的误导，而当时在外地比赛并无查证的时间和条件，特此收回。</p>
<p style="text-indent: 2em">经过对比，我发现这是非常合适的一个条件，谷歌只显示我的书的目录和摘要，就支付给我60美元。回首祖国，无数的网站都能下载我的书的全文，从1999年2009年，我从来没有收到过一分钱。现在谷歌仅仅刊登了我的书的目录，就支付给我60美金，我觉得非常的满足。这十年来，我曾一度接近可以通过互联网赚点稿费，在2000年的时候，某中文网曾经和我签约第一本书的电子版权，在点击和下载量终于可以接近10000人民币的时候，突然间所有数据都变成0了，后来就再也没有人提起过这事。在中国，唯独起点中文网支付给我网络连载的费用，但那是针对尚未出版的新小说。</p><div class="articleContent" id="articleBody">
<p style="text-indent: 2em">我欢迎谷歌图书馆扫描我的每一本图书，并欣然接受在显示目录和摘要下60美元一本的条件。之前对于谷歌的指责是因为我在接受采访时受到了某些媒体的误导，而当时在外地比赛并无查证的时间和条件，特此收回。</p>
<p style="text-indent: 2em">经过对比，我发现这是非常合适的一个条件，谷歌只显示我的书的目录和摘要，就支付给我60美元。回首祖国，无数的网站都能下载我的书的全文，从1999年2009年，我从来没有收到过一分钱。现在谷歌仅仅刊登了我的书的目录，就支付给我60美金，我觉得非常的满足。这十年来，我曾一度接近可以通过互联网赚点稿费，在2000年的时候，某中文网曾经和我签约第一本书的电子版权，在点击和下载量终于可以接近10000人民币的时候，突然间所有数据都变成0了，后来就再也没有人提起过这事。在中国，唯独起点中文网支付给我网络连载的费用，但那是针对尚未出版的新小说。</p>
<p style="text-indent: 2em">而谷歌支付的这60美元仅仅是个目录而已，如果有人要全文下载，那需要另外收费，如果我拿七谷歌拿三，我认为是非常合理的，因为在传统出版中，我只拿一，书店要拿到四到五。</p>
<p style="text-indent: 2em">在谷歌数字图书馆之前，作为内行，我甚至都不知道中国还有文字著作协会。我一直以为在中国负责版权保护的人都已经死绝了。可能打击国内的盗版网站工作量大而且没有什么钱可以赚吧，所以他们一直潜伏着没有出动。也可能对中国的所谓版权保护协会来说，有奶才是敌。既然有这个协会，那我恳请他们帮我维权，打击除了谷歌以外一切可以免费阅读下载我的长篇小说全文的文学网站（我愿意将我的杂文，散文，短篇小说在网络上免费共享，但长篇小说和整本图书实在不行，希望大家留我一条生路，虽然如此，如果你要强行共享，也完全可以搜索到我的任何文字）。</p>
<p style="text-indent: 2em">谷歌是第一个愿意就已出版图书支付给我钱的网站，出于对先烈的优惠，我给他们打五折，也就是30美元一本，即可获得我的授权。</p>
<p style="text-indent: 2em">特此申明。</p>
<p style="text-indent: 2em">韩寒。</p>
</div>
<!--   -->]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=727</link>
      <title><![CDATA[更改配置app.Config里的值]]></title>
      <author>一线风</author>
      <category>工作相关</category>
      <pubDate>2009-11-17 17:53:37</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=727</guid>
      <comments>
              /Blog/Blog.aspx?Id=727#commentbox
            </comments>
      <description><![CDATA[<div class="codeText">
<div class="codeHead">C#代码</div>
<ol class="dp-c">
    <li class="alt"><span><span>&nbsp;System.Configuration.Configuration&nbsp;config&nbsp;= &nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;AppSettingsSection&nbsp;appSetcion&nbsp;=&nbsp;config.GetSection(</span><span class="string">&quot;appSettings&quot;</span><span>)&nbsp;</span><span class="keyword">as</span><span>&nbsp;AppSettingsSection; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;appSetcion.Settings[</span><span class="string">&quot;AutoRun&quot;</span><span>].Value&nbsp;=&nbsp;</span><span class="string">&quot;this&nbsp;is&nbsp;&nbsp;a&nbsp;test&quot;</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span class="comment">//&nbsp;ConfigurationManager.AppSettings[&quot;Save&quot;]&nbsp;=&nbsp;isCheck.ToString(); </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;txtMessage.Text&nbsp;+=&nbsp;ConfigurationManager.AppSettings[</span><span class="string">&quot;AutoRun&quot;</span><span>]; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;config.Save(); &nbsp;&nbsp;</span></li>
</ol>
</div><div class="codeText">
<div class="codeHead">更改自动定义配置的C#代码</div>
<ol class="dp-c">
    <li class="alt"><span><span class="keyword">bool</span><span>&nbsp;isCheck&nbsp;=&nbsp;chkAutoRun.Checked; &nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Configuration.Configuration&nbsp;config&nbsp;=&nbsp;ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CoreSection&nbsp;core&nbsp;=&nbsp;config.GetSection(</span><span class="string">&quot;coreSection&quot;</span><span>)&nbsp;</span><span class="keyword">as</span><span>&nbsp;CoreSection; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(core&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>)&nbsp;core.AutoRun&nbsp;=&nbsp;isCheck; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;config.Save();&nbsp;&nbsp;</span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>注意：要使用Section操作才行。直接用Appsettting[&quot;somekey&quot;]是不行的</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=726</link>
      <title><![CDATA[简历更新，更新对Xhtml，DIV，CSS的一些认识]]></title>
      <author>一线风</author>
      <category>工作相关</category>
      <pubDate>2009-11-11 17:31:24</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=726</guid>
      <comments>
              /Blog/Blog.aspx?Id=726#commentbox
            </comments>
      <description><![CDATA[<p>今天对简历进行了更新，因为女朋友最近在学习DIV+CSS，我也跟着一块学了学，刚好，把学到的差不多都用上了。修正了一些原先的错误观念，修改过后还是有点心得的，呵！<br />
<br />
总结：<br />
-------------------------<br />
1. CSS应用了float属性后要同时申请宽度定义,widht:auto，这个是标准问题<br />
2. CSS应用了float后在下面要应用clear:both;清除，否则float元素会脱离上一级元素<br />
3. W3C很变态，target=&quot;_blank&quot; 不符合规范了<br />
4. 想让固定尺寸的DIV居中于屏幕的话，除了最上层的DIV的texta-align:center;外还要在其下层的DIV里写上margin-Right: auto; margin-Left: auto;才行</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=725</link>
      <title><![CDATA[IE6真的过时了？]]></title>
      <author>一线风</author>
      <category>生活杂谈</category>
      <pubDate>2009-11-4 21:43:42</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=725</guid>
      <comments>
              /Blog/Blog.aspx?Id=725#commentbox
            </comments>
      <description><![CDATA[<p>最近，大概有一个月左右吧，用Maxthon时老是卡死，刚才在CNBLOGS上发文章时点个插入代码也卡死了，不论是Maxthon还是IE6，在Firefox里就好好的。哎~估计是IE6真的老去了。我也有点老了，是该换的时候了。换上IE8，明显有好转了。当初留着IE6是为了测试兼容性的。各位没有升级的朋友，也出现这个问题的话，不防升级试一下！</p>
<p>&nbsp;</p>]]></description>
    </item>
    <item>
      <link>http://max.cszi.com/Blog/Blog.aspx?Id=724</link>
      <title><![CDATA[使用Oracle提供的Oracle.DataAccess 返回包里的记录集游标，含Oralce里的分页包代码]]></title>
      <author>一线风</author>
      <category>工作相关</category>
      <pubDate>2009-11-4 17:41:02</pubDate>
      <guid>http://max.cszi.com/Blog/Blog.aspx?Id=724</guid>
      <comments>
              /Blog/Blog.aspx?Id=724#commentbox
            </comments>
      <description><![CDATA[<p>C#里的调用代码</p>
<div class="codeText">
<div class="codeHead">C#代码</div>
<ol class="dp-c">
    <li class="alt"><span><span>[Test] &nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;Page1Test() &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">using</span><span>(Database&nbsp;db&nbsp;=&nbsp;DBFactory.Create()) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">const</span><span>&nbsp;</span><span class="keyword">string</span><span>&nbsp;sql&nbsp;=&nbsp;</span><span class="string">&quot;&nbsp;select&nbsp;*&nbsp;from&nbsp;test_temp&nbsp;where&nbsp;ID&nbsp;&lt;&nbsp;1000&nbsp;order&nbsp;by&nbsp;id&nbsp;asc&nbsp;&quot;</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleCommand&nbsp;cmd&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleCommand(</span><span class="string">&quot;PAGESPLIT_PKG.PAGESPLIT_SP&quot;</span><span>,db.Connection); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.CommandType&nbsp;=&nbsp;CommandType.StoredProcedure; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleParameter&nbsp;p1&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleParameter(</span><span class="string">&quot;pagesize&quot;</span><span>,&nbsp;OracleDbType.Int32); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p1.Direction&nbsp;=&nbsp;ParameterDirection.Input; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p1.Value&nbsp;=&nbsp;20; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleParameter&nbsp;p2&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleParameter(</span><span class="string">&quot;pageindex&quot;</span><span>,&nbsp;OracleDbType.Int32); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p2.Direction&nbsp;=&nbsp;ParameterDirection.Input; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p2.Value&nbsp;=&nbsp;2; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleParameter&nbsp;p3&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleParameter(</span><span class="string">&quot;sqltext&quot;</span><span>,&nbsp;OracleDbType.Varchar2); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p3.Direction&nbsp;=&nbsp;ParameterDirection.Input; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p3.Value&nbsp;=&nbsp;sql; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleParameter&nbsp;p4&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleParameter(</span><span class="string">&quot;Records_out&quot;</span><span>,&nbsp;OracleDbType.Int32,DBNull.Value,ParameterDirection.Output);&nbsp;</span><span class="comment">//就算是空值也要写，否则是会出错的 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleParameter&nbsp;p5&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleParameter(</span><span class="string">&quot;table_out&quot;</span><span>,&nbsp;OracleDbType.RefCursor,DBNull.Value,&nbsp;ParameterDirection.Output); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Parameters.Add(p1); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Parameters.Add(p2); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Parameters.Add(p3); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Parameters.Add(p4); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cmd.Parameters.Add(p5); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OracleDataAdapter&nbsp;da&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;OracleDataAdapter(cmd); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataSet&nbsp;ds&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;DataSet(); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;da.Fill(ds); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(ds.Tables.Count); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(ds.Tables[0].TableName); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(ds.Tables[0].Rows.Count); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(</span><span class="string">&quot;结果:&quot;</span><span>&nbsp;+&nbsp;cmd.Parameters[</span><span class="string">&quot;Records_out&quot;</span><span>].Value.ToString()); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">foreach</span><span>(DataRow&nbsp;&nbsp;row&nbsp;</span><span class="keyword">in</span><span>&nbsp;ds.Tables[0].Rows) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(row[1]); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
</ol>
</div><p>Oracle里的包内容：</p>
<div class="codeText">
<div class="codeHead">SQL代码</div>
<ol class="dp-sql">
    <li class="alt"><span><span class="keyword">create</span><span>&nbsp;</span><span class="op">or</span><span>&nbsp;</span><span class="func">replace</span><span>&nbsp;package&nbsp;PageSplit_PKG&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span></span></li>
    <li class=""><span class="comment">----------------------------------------------------------------------- </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span class="comment">--&nbsp;分页模块PageSplitPackage4Oracle&nbsp;V0.01 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="comment">--&nbsp;Author&nbsp;:&nbsp;zhouyu&nbsp;&nbsp;Eamil:atwind@cszi.com </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span class="comment">--&nbsp;2009-11-4 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="comment">-----------------------------------------------------------------------/ </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;type&nbsp;DataTable&nbsp;</span><span class="keyword">is</span><span>&nbsp;REF&nbsp;</span><span class="keyword">CURSOR</span><span>;&nbsp;&nbsp;</span><span class="comment">--游标类型定义，用于返回数据集 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP(PageSize&nbsp;</span><span class="keyword">int</span><span>,PageIndex&nbsp;</span><span class="keyword">int</span><span>,SqlText&nbsp;string,Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable);&nbsp;</span><span class="comment">--申明包里的SP1 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP(PageSize&nbsp;</span><span class="keyword">int</span><span>,PageIndex&nbsp;</span><span class="keyword">int</span><span>,SqlText&nbsp;string,Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,Pages_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable);&nbsp;</span><span class="comment">--申明包里的SP2 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP(PageSize&nbsp;</span><span class="keyword">int</span><span>,PageIndex&nbsp;</span><span class="keyword">int</span><span>,SqlText&nbsp;string,SqlTextCount&nbsp;string,Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable);&nbsp;</span><span class="comment">--申明包里的SP3 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP(PageSize&nbsp;</span><span class="keyword">int</span><span>,PageIndex&nbsp;</span><span class="keyword">int</span><span>,SqlText&nbsp;string,Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable);&nbsp;</span><span class="comment">--申明包里的SP3 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span class="keyword">end</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="keyword">create</span><span>&nbsp;</span><span class="op">or</span><span>&nbsp;</span><span class="func">replace</span><span>&nbsp;package&nbsp;body&nbsp;PageSplit_PKG&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span class="comment">--&nbsp;以下方法来自于网络修改 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span class="comment">-------------------------------------------------------------------------------------------- </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="comment">--功能描述:&nbsp;大数据量分页通用存储过程,超过100W数据的表，尽量加上索引上的条件 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span class="comment">--创建时间:&nbsp;2009-11-4 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="comment">--------------------------------------------------------------------------------------------/ </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;( &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageSize&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--每页记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageIndex&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--当前页码,从&nbsp;1&nbsp;开始 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlText&nbsp;string,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--查询语句,含排序部分 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,</span><span class="comment">--返回总记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable&nbsp;&nbsp;</span><span class="comment">----返回当前页数据记录 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span><span class="comment">--对包中定义的SP1的实现 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;varchar2(8000);&nbsp;&nbsp;</span><span class="comment">--&nbsp;不要超过32767个字符,不可以使用nvarchar2型,下面用的是to_char() </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;v_count&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">begin</span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--取记录总数 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'select&nbsp;count(*)&nbsp;from&nbsp;('</span><span>&nbsp;||&nbsp;SqlText&nbsp;||&nbsp;</span><span class="string">')'</span><span>;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--拼接统计Sql </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">execute</span><span>&nbsp;immediate&nbsp;v_sql&nbsp;</span><span class="keyword">into</span><span>&nbsp;v_count;&nbsp;</span><span class="comment">--执行统计 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;:=&nbsp;v_count; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--行位置判断 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;:=&nbsp;PageIndex&nbsp;*&nbsp;PageSize; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;:=&nbsp;v_maxRownum&nbsp;-&nbsp;PageSize&nbsp;+&nbsp;1; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--拼接查询语句 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'SELECT&nbsp;* </span>&nbsp;</li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;( </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;A.*,&nbsp;rownum&nbsp;rn </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;('</span><span>||&nbsp;SqlText&nbsp;||</span><span class="string">')&nbsp;A </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rownum&nbsp;&lt;=&nbsp;'</span><span>||&nbsp;to_char(v_maxRownum)&nbsp;||&nbsp;</span><span class="string">' </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;B </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rn&nbsp;&gt;=&nbsp;'</span><span>&nbsp;||&nbsp;to_char(v_minRownum)&nbsp;; &nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">open</span><span>&nbsp;Table_out&nbsp;</span><span class="keyword">for</span><span>&nbsp;&nbsp;v_sql; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">end</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>/***************************************************************** &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;*功能描述:&nbsp;大数据量分页通用存储过程(重载1,直接返回分页数量) &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;*创建时间:&nbsp;2009-11-3 &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;*****************************************************************/ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;( &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageSize&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--每页记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageIndex&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--当前页码,从&nbsp;1&nbsp;开始 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlText&nbsp;string,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--查询语句,含排序部分 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,</span><span class="comment">--返回总记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pages_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;</span><span class="comment">--返回分出的页数 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable&nbsp;&nbsp;</span><span class="comment">----返回当前页数据记录 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;varchar2(8000); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_count&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">begin</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">----取记录总数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'select&nbsp;count(*)&nbsp;from&nbsp;('</span><span>&nbsp;||&nbsp;SqlText&nbsp;||&nbsp;</span><span class="string">')'</span><span>;&nbsp;&nbsp;</span><span class="comment">--生成统计字符串 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">execute</span><span>&nbsp;immediate&nbsp;v_sql&nbsp;</span><span class="keyword">into</span><span>&nbsp;v_count;&nbsp;</span><span class="comment">--执行统计 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;:=&nbsp;v_count; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--行位置判断 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;:=&nbsp;PageIndex&nbsp;*&nbsp;PageSize; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;:=&nbsp;v_maxRownum&nbsp;-&nbsp;PageSize&nbsp;+&nbsp;1; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--拼接查询语句 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'SELECT&nbsp;* </span>&nbsp;</li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;( </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;A.*,&nbsp;rownum&nbsp;rn </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;('</span><span>||&nbsp;SqlText&nbsp;||</span><span class="string">')&nbsp;A </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rownum&nbsp;&lt;=&nbsp;'</span><span>||&nbsp;to_char(v_maxRownum)&nbsp;||&nbsp;</span><span class="string">' </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;B </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rn&nbsp;&gt;=&nbsp;'</span><span>&nbsp;||&nbsp;to_char(v_minRownum)&nbsp;; &nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">OPEN</span><span>&nbsp;Table_out&nbsp;</span><span class="keyword">FOR</span><span>&nbsp;&nbsp;v_sql; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">end</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>/***************************************************************** &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;*功能描述:&nbsp;大数据量分页通用存储过程(重载2，自定义统计查询，推荐使用) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;*创建时间:&nbsp;2009-11-3 &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;*****************************************************************/ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;( &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageSize&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--每页记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageIndex&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--当前页码,从&nbsp;1&nbsp;开始 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlText&nbsp;string,&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--查询语句,含排序部分 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlTextCount&nbsp;string,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--获取记录总数的查询语句 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--返回总记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;varchar2(8000); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_count&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">begin</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">----取记录总数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">execute</span><span>&nbsp;immediate&nbsp;SqlTextCount&nbsp;</span><span class="keyword">into</span><span>&nbsp;v_count; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Records_out&nbsp;:=&nbsp;v_count; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">----执行分页查询 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;:=&nbsp;PageIndex&nbsp;*&nbsp;PageSize; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;:=&nbsp;v_maxRownum&nbsp;-&nbsp;PageSize&nbsp;+&nbsp;1; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'SELECT&nbsp;* </span>&nbsp;</li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;( </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;A.*,&nbsp;rownum&nbsp;rn </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;('</span><span>||&nbsp;SqlText&nbsp;||</span><span class="string">')&nbsp;A </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rownum&nbsp;&lt;=&nbsp;'</span><span>||&nbsp;to_char(v_maxRownum)&nbsp;||&nbsp;</span><span class="string">' </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;B </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rn&nbsp;&gt;=&nbsp;'</span><span>&nbsp;||&nbsp;to_char(v_minRownum)&nbsp;; &nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">OPEN</span><span>&nbsp;Table_out&nbsp;</span><span class="keyword">FOR</span><span>&nbsp;&nbsp;v_sql; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">end</span><span>&nbsp;; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>/***************************************************************** &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;*功能描述:&nbsp;大数据量分页通用存储过程(重载3，不输出总记录数，适用于外部分页计算，内部直选记录集，DB计算压力最小) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;*创建时间:&nbsp;2009-11-3 &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;*****************************************************************/ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">procedure</span><span>&nbsp;PageSplit_SP &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;( &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageSize&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--每页记录数 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageIndex&nbsp;</span><span class="keyword">int</span><span>,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--当前页码,从&nbsp;1&nbsp;开始 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SqlText&nbsp;string,&nbsp;&nbsp;</span><span class="comment">--查询语句,含排序部分 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Table_out&nbsp;</span><span class="keyword">out</span><span>&nbsp;DataTable &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;) &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">as</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;varchar2(8000); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;</span><span class="keyword">int</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">begin</span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">----执行分页查询 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_maxRownum&nbsp;:=&nbsp;PageIndex&nbsp;*&nbsp;PageSize; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_minRownum&nbsp;:=&nbsp;v_maxRownum&nbsp;-&nbsp;PageSize&nbsp;+&nbsp;1; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_sql&nbsp;:=&nbsp;</span><span class="string">'SELECT&nbsp;* </span>&nbsp;</li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;( </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SELECT&nbsp;A.*,&nbsp;rownum&nbsp;rn </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FROM&nbsp;&nbsp;('</span><span>||&nbsp;SqlText&nbsp;||</span><span class="string">')&nbsp;A </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rownum&nbsp;&lt;=&nbsp;'</span><span>||&nbsp;to_char(v_maxRownum)&nbsp;||&nbsp;</span><span class="string">' </span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;B </span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;rn&nbsp;&gt;=&nbsp;'</span><span>&nbsp;||&nbsp;to_char(v_minRownum)&nbsp;; &nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">--注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">OPEN</span><span>&nbsp;Table_out&nbsp;</span><span class="keyword">FOR</span><span>&nbsp;&nbsp;v_sql; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">end</span><span>; &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span class="keyword">end</span><span>;&nbsp;&nbsp;</span></li>
</ol>
</div>
<p>&nbsp;</p>
<p>在Toad里编译能通过，PLSQL Developer里则有问题。不知啥原因，知道的高人回答一下。呵~~~</p>]]></description>
    </item>
  </channel>
</rss>