<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_SSL的工作学习问题整理</title><subtitle type="text">起的比鸡早，睡的比鸡晚</subtitle><id>http://feed.cnblogs.com/blog/u/4966/rss</id><updated>2011-08-30T05:22:46Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/4966/rss"/><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/08/30/2159494.html</id><title type="text">windows2008企业版下ReportQueue目录自增长问题的解决</title><summary type="text">公司最近部署了一批winodws2008企业版本的服务器，部署后反复出现ReportQueue目录下文件过大造成C盘空间只剩余十几兆空间，所以开始在网上搜索总算找到了症结所在。收集一下好文以方便自己和有同样问题的兄弟查找。How To Disable Vista Error Reporting FeatureWindows Vista comes with a Windows Error Reporting (WER) program called Problem Reports And Solutions.Depend on its configuration, this program w</summary><published>2011-08-30T05:22:00Z</published><updated>2011-08-30T05:22:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/08/30/2159494.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/08/30/2159494.html"/><content type="html">&lt;p&gt;公司最近部署了一批winodws2008企业版本的服务器，部署后反复出现ReportQueue目录下文件过大造成C盘空间只剩余十几兆空间，所以开始在网上搜索总算找到了症结所在。&lt;/p&gt;&lt;p&gt;收集一下好文以方便自己和有同样问题的兄弟查找。&lt;/p&gt;&lt;p&gt;&lt;a title="Permanent Link - How To Disable Vista Error Reporting Feature" href="http://www.walkernews.net/2007/08/13/how-to-disable-vista-error-reporting-feature/" rel="bookmark"&gt;&lt;span style="color: #000000;" color="#000000"&gt;How To Disable Vista Error Reporting Feature&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a title="How to add Copy To Folder or Move To Folder shortcut in Windows Vista context menu?" href="http://www.walkernews.net/2007/07/27/add-copy-to-or-move-to-context-menu-in-vista/" rel="bookmark"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;Windows Vista&lt;/span&gt;&lt;/a&gt; comes with a Windows Error Reporting (WER) program called &lt;strong&gt;Problem Reports And Solutions&lt;/strong&gt;.&lt;br /&gt;&lt;span id="more-430"&gt;&lt;/span&gt;&lt;br /&gt;Depend on its configuration, this program will automatically collecting various Windows errors and silently sending the details to Microsoft dedicated servers. Once the problem is identified and found with a matching solution, it will display the &lt;a title="Direct download links of some popular Microsoft Product Updates for Firefox users." href="http://www.walkernews.net/2007/06/16/direct-download-link-of-microsoft-product-update/" rel="bookmark"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;Windows Update links&lt;/span&gt;&lt;/a&gt; or relevant steps to resolve the problem.&lt;br /&gt;With the help of Problem Reports And Solutions program, I&amp;rsquo;ve just managed to fix the &lt;a title="How to fix Office 2007 application hang up problem that caused by Voxware MetaSound Audio Codec incompatibility issue." href="http://www.walkernews.net/2007/08/13/how-to-fix-powerpoint-slide-show-crash-problem/" rel="bookmark"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;PowerPoint 2007 hangs up problem&lt;/span&gt;&lt;/a&gt; whenever attempt to open a PowerPoint Slide Show with sound effects.&lt;br /&gt;&lt;br /&gt;So, I think it&amp;rsquo;s a nice feature that should have been turned on &amp;ndash; at least for now, as there are still many Vista-incompatible issues among Windows drivers and applications!&lt;br /&gt;&lt;br /&gt;As for the sake of security concerns, you can always try to do some researches before committing the solution feedback by Microsoft via the Problem Reports And Solutions program.&lt;br /&gt;&lt;br /&gt;But, I believe most users who want to disable or turn off WER feature are afraid of Microsoft will silently retrieving sensitive and private information along with Windows errors information sending to their servers, regardless the claims of its &lt;a title="Privacy Statement for the Microsoft Error Reporting Service" href="http://oca.microsoft.com/en/dcp20.asp" rel="bookmark" target="_blank"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;privacy agreement&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So, &lt;strong&gt;how could you disable or turn off Windows Vista Error Reporting feature or the Problem Reports And Solutions program&lt;/strong&gt;?&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Click the Windows &lt;a title="Complete list of Windows Vista shortcut keys for reference" href="http://www.walkernews.net/2007/05/16/list-of-windows-vista-keyboard-shortcut-or-hotkey/" rel="bookmark"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;shortcut key&lt;/span&gt;&lt;/a&gt; or Vista Orb button to bring up the Vista Start menu,&lt;br /&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;Type &lt;code&gt;&lt;span style="background-color: #ddddee; font-family: Lucida Console;" face="Lucida Console"&gt;problem&lt;/span&gt;&lt;/code&gt; in the &lt;em&gt;&lt;a title="Windows Vista Instant Search feature helps to efficiently locate data storing in a hard disk." href="http://www.walkernews.net/2007/07/09/vista-instant-search-vs-windows-run-command/" rel="bookmark"&gt;&lt;span style="color: #0000ff;" color="#0000ff"&gt;Start Search&lt;/span&gt;&lt;/a&gt;&lt;/em&gt; text box and click the Problem Reports And Solutions shortcut in the Program list,&lt;br /&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;On the left pane of Problem Reports And Solutions window, locate and click the &lt;strong&gt;Change Settings&lt;/strong&gt; option,&lt;br /&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;It&amp;rsquo;s recommended to &amp;ldquo;Check for solutions automatically and Notify you if you can take steps to solve a problem&amp;rdquo;. Otherwise, select the option &amp;ldquo;Ask me to check if a problem occurs&amp;rdquo;.&lt;br /&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;If you want to totally disable the WER functions, click the Advanced Settings link and set the &amp;ldquo;For my programs, problem reporting is:&amp;rdquo; option to OFF. &lt;br /&gt;You may also disable Windows Error Reporting functions for all Vista user accounts &amp;ndash; click the Change Setting button of &amp;ldquo;For all users and programs, problem reporting is set to:&amp;rdquo; option to OFF!&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2159494.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/08/30/2159494.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/19/2051285.html</id><title type="text">AspxGridView 使用LinqServerModeDataSource加载数据 测试</title><summary type="text">今天对LinqServerModeDataSource进行测试其分页功效，所以做了一个简单的DEMO。 &lt;asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"&gt; &lt;dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColu...</summary><published>2011-05-19T09:23:00Z</published><updated>2011-05-19T09:23:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/19/2051285.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/19/2051285.html"/><content type="html">&lt;p&gt;今天对LinqServerModeDataSource进行测试其分页功效，所以做了一个简单的DEMO。&lt;/p&gt;  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;asp&lt;/span&gt;:&lt;span style="color: #800000"&gt;Content&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"BodyContent"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"server"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ContentPlaceHolderID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"MainContent"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;ASPxGridView&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"ASPxGridView1"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"server"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;AutoGenerateColumns&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"False"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ClientInstanceName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"grid"&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #ff0000"&gt;DataSourceID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"LinqServerModeDataSource1"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Width&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"100%"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ClientIDMode&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"AutoID"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;KeyFieldName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"MEDIA_ID"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;Columns&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt; &lt;span style="color: #ff0000"&gt;FieldName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"RESOURCE_NAME"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;VisibleIndex&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"1"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt; &lt;span style="color: #ff0000"&gt;FieldName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"MEDIA_KEY"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;VisibleIndex&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"2"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt; &lt;span style="color: #ff0000"&gt;FieldName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"MEDIA_KEY2"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;VisibleIndex&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"3"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;GridViewDataTextColumn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;Columns&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;SettingsPager&lt;/span&gt; &lt;span style="color: #ff0000"&gt;NumericButtonCount&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"20"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;SettingsPager&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;Settings&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ShowFilterRow&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"true"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ShowFilterRowMenu&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"true"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;ASPxGridView&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;LinqServerModeDataSource&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"LinqServerModeDataSource1"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"server"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ContextTypeName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"WebApplication1.Mder_centerEntities"&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #ff0000"&gt;TableName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"COMM_MEDIA_INFO"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;asp&lt;/span&gt;:&lt;span style="color: #800000"&gt;Content&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;其中&lt;span style="color: #ff0000"&gt;KeyFieldName&lt;font color="#000000"&gt;必须指定。如果只是这样运行时会报错，报错信息如下&lt;/font&gt;&lt;/span&gt;&amp;nbsp; Key expression is undefined 解决办法：aspx文件中&lt;span style="color: #800000"&gt;LinqServerModeDataSource&lt;/span&gt; 加入OnSelecting事件：&lt;div&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;dx&lt;/span&gt;:&lt;span style="color: #800000"&gt;LinqServerModeDataSource&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"LinqServerModeDataSource1"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"server"&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ContextTypeName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"WebApplication1.Mder_centerEntities"&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #ff0000"&gt;TableName&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"COMM_MEDIA_INFO"&lt;/span&gt;&lt;strong&gt; &lt;u&gt;&lt;span style="color: #ff0000"&gt;OnSelecting&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"LinqServerModeDataSource1_Selecting"&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;/div&gt;&lt;div&gt;同时在代码中做如下处理：&lt;/div&gt; protected void LinqServerModeDataSource1_Selecting(object sender, DevExpress.Data.Linq.LinqServerModeDataSourceSelectEventArgs e)&lt;br/&gt;        {&lt;br/&gt;          &lt;u&gt;  e.KeyExpression = "MEDIA_ID";&lt;/u&gt;&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;采用SqlProfiler对数据分页进行了跟踪，发现&lt;span style="color: #800000"&gt;LinqServerModeDataSource对分页数据加载采用如下手段进行处理&lt;/span&gt;&lt;/strong&gt;&lt;span style="color: #800000"&gt;&lt;font color="#000000"&gt;1、数据首次加载&lt;/font&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color: #800000"&gt;&lt;font color="#000000"&gt;先取数据总量&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="color: #800000"&gt;&lt;/span&gt;  SELECT &lt;br/&gt;[GroupBy1].[A1] AS [C1]&lt;br/&gt;FROM ( SELECT &lt;br/&gt;COUNT(1) AS [A1]&lt;br/&gt;FROM [dbo].[COMM_MEDIA_INFO] AS [Extent1]&lt;br/&gt;)  AS [GroupBy1]&lt;ul&gt;&lt;li&gt;从数据表中取64条做为分页用数据（这时取的是64 *注意是64条数据，而不是只取KEY）&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;2、当选择分页超出已取数据行数时（一页显示10条记录，点击第10页）&lt;/p&gt;&lt;ul&gt;&lt;li&gt;取数据总量&lt;/li&gt;&lt;li&gt;取定量TOP的KEY值&amp;nbsp; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=TOP&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;TOP&lt;/a&gt; (128) &lt;br&gt;[Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [MEDIA_ID]&lt;br&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; [dbo].[COMM_MEDIA_INFO] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [Extent1]&lt;br&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ORDER&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ORDER&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=BY&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;BY&lt;/a&gt; [Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ASC&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ASC&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;根据分页取一定数量的数据信息（这时取值为32）&lt;/li&gt;&lt;/ul&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;br/&gt;[Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [MEDIA_ID], &lt;br/&gt;[Extent1].[RESOURCE_NAME] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [RESOURCE_NAME], &lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; [dbo].[COMM_MEDIA_INFO] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [Extent1]&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=WHERE&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;WHERE&lt;/a&gt; [Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=IN&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;IN&lt;/a&gt; (N'&lt;span style="color: #8b0000"&gt;0055f6b2-2e3b-40ce-aaf1-cb0823fc8f8f&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0059f0d7-df89-4079-b43e-e21e0ffac76c&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;005e0238-158e-4bda-9313-09ebb71db86c&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;005e88ad-68da-4ef6-b320-665e80b2dd8d&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;00604a86-7f94-46fe-9b83-54fb4fbebc68&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006203d7-ff3b-401f-836e-7f9f9be0752f&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006241f3-9211-49d8-a2f0-c3fa613718cd&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0064af47-b122-4512-9658-43585c2cf7a8&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;00672488-6ebe-4d5b-9b06-2639f6900589&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0068a3ac-2f37-4066-b2ec-d979e0c2dc4d&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0068fc39-9a30-4805-b5d3-95471e5c2d10&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0069b167-9aad-4698-962a-c0e327cf0d93&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0069f792-9c22-41cc-9a82-1e1208ad91b2&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006a3bfe-d08e-4fe1-8f70-9bacc3e5a2c6&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006b66c9-91ac-4453-aa0c-0d100d92d098&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006e0243-987f-49f1-a6ae-d7c1153d0df5&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006fa965-9904-4b9b-8bee-78b16aa49bd6&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006fbadd-0fa2-40b2-91ed-6de7ed33c0d1&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006fd416-2892-435f-b4a7-83ef217cb776&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;006ff6e8-dc1a-49a8-b75c-296c324c965e&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0071e918-94f6-4005-b22e-80dcfb401625&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0071fb29-8f85-4ae0-a467-62fb9e46124c&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007206ed-9899-4d66-b6e6-5bdb0f14d67c&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;0074c52f-c0d6-42f3-8b1a-5694892e18a1&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;00756f2e-61a5-405c-a8cf-22b446b7800f&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007572f4-c380-4e50-ad29-f7f34e7c19ad&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;00780d78-425a-40c8-83c8-a35b8a2afc7a&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007884ed-4592-49f0-afde-0ad409c1d69a&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;00797dd6-8e21-40c0-af93-66b86114150b&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007a5862-3f1c-4794-9a32-fc2fe7bd2cac&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007ca140-28c6-4094-9b21-3beafe525cfc&lt;/span&gt;',N'&lt;span style="color: #8b0000"&gt;007e14df-148b-4a2f-ada7-59fb124377b1&lt;/span&gt;')&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ORDER&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ORDER&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=BY&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;BY&lt;/a&gt; [Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ASC&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ASC&lt;/a&gt;&lt;br&gt;3、当选择分页超出已取数据行数时（一页显示10条记录，点击第26页）&lt;ul&gt;&lt;li&gt;取数据总量&lt;/li&gt;&lt;li&gt;取定量TOP的KEY值&amp;nbsp; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=TOP&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;TOP&lt;/a&gt; (512) &lt;br&gt;[Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [MEDIA_ID]&lt;br&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; [dbo].[COMM_MEDIA_INFO] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [Extent1]&lt;br&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ORDER&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ORDER&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=BY&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;BY&lt;/a&gt; [Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ASC&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ASC&lt;/a&gt;&lt;br&gt;&lt;/li&gt;&lt;li&gt;根据分页取一定数量的数据信息（这时取值为32）&lt;/li&gt;&lt;/ul&gt;4、当选择分页超出已取数据行数时（一页显示10条记录，点击第30页）&lt;ul&gt;&lt;li&gt;取数据总量&lt;/li&gt;&lt;li&gt;取定量TOP的KEY值&amp;nbsp; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=TOP&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;TOP&lt;/a&gt; (512)&amp;nbsp;&amp;nbsp; *由于没有超出范围继续取512&lt;br&gt;&lt;/li&gt;&lt;li&gt;根据分页取一定数量的数据信息（这时取值为32）&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;下面再来看看排序时做的操作&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、首次查询&lt;/p&gt;&lt;ul&gt;&lt;li&gt;取数据总量&lt;/li&gt;&lt;li&gt;取查询条件数据总量&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;br/&gt;[GroupBy1].[A1] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [C1]&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; ( &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=COUNT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;COUNT&lt;/a&gt;(1) &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [A1]&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; [dbo].[COMM_MEDIA_INFO] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [Extent1]&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=WHERE&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;WHERE&lt;/a&gt; [Extent1].[RESOURCE_NAME] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=LIKE&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;LIKE&lt;/a&gt; N'&lt;span style="color: #8b0000"&gt;物业%&lt;/span&gt;'&lt;br/&gt;)  &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [GroupBy1]&lt;br/&gt;&lt;/div&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;取数据（由于数据量不大所以SQL语句如下，是不是在大数据量下还有处理暂未测试）&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=SELECT&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;SELECT&lt;/a&gt; &lt;br/&gt;[Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [MEDIA_ID], &lt;br/&gt;[Extent1].[RESOURCE_NAME] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [RESOURCE_NAME], &lt;br/&gt;[Extent1].[MEDIA_KEY] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [MEDIA_KEY], &lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=FROM&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;FROM&lt;/a&gt; [dbo].[COMM_MEDIA_INFO] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=AS&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;AS&lt;/a&gt; [Extent1]&lt;br/&gt;&lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=WHERE&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;WHERE&lt;/a&gt; [Extent1].[RESOURCE_NAME] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=LIKE&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;LIKE&lt;/a&gt; N'&lt;span style="color: #8b0000"&gt;物业%&lt;/span&gt;'&lt;br/&gt;ORDER &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=BY&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;BY&lt;/a&gt; [Extent1].[MEDIA_ID] &lt;a style="color: #0000ff" href="http://search.microsoft.com/default.asp?so=RECCNT&amp;amp;siteid=us%2Fdev&amp;amp;p=1&amp;amp;nq=NEW&amp;amp;qu=ASC&amp;amp;IntlSearch=&amp;amp;boolean=PHRASE&amp;amp;ig=01&amp;amp;i=09&amp;amp;i=99"&gt;ASC&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;span style="color: #ff0000"&gt;&lt;font color="#000000"&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2051285.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/19/2051285.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/16/2048206.html</id><title type="text">Silverlight4正式版下的TCP通信问题及解决</title><summary type="text">根据微软WCF开发经理Tomasz Janczuk所述，相对于HTTP Duplex来说，Net.TCP在如下方面进行了重大的改进： * 吞吐量：对于UI线程来说提升了5.5倍，对于worker线程来说提升了870倍。 * 最大的客户端数量：服务器可支持的连接客户端数量是之前的5-6倍。看来自己又OUT了到现在才开始做DEMO,于是在上网找资料，找啊找…“找啊找啊找朋友，找到一个好朋友…”最近这个歌唱多了。先给出资源列表：Self-hosted NET.TCP WCF for Silverlight 4WCF NET.TCP Protocol in SilverlightNetwork Se.</summary><published>2011-05-16T14:41:00Z</published><updated>2011-05-16T14:41:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/16/2048206.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/16/2048206.html"/><content type="html">&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 根据微软WCF开发经理Tomasz Janczuk所述，相对于HTTP Duplex来说，Net.TCP在如下方面进行了重大的改进：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 吞吐量：对于UI线程来说提升了5.5倍，对于worker线程来说提升了870倍。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * 最大的客户端数量：服务器可支持的连接客户端数量是之前的5-6倍。&lt;/p&gt;&lt;p&gt;看来自己又OUT了到现在才开始做DEMO,于是在上网找资料，找啊找&amp;hellip;&amp;ldquo;找啊找啊找朋友，找到一个好朋友&amp;hellip;&amp;rdquo;最近这个歌唱多了。&lt;/p&gt;&lt;p&gt;先给出资源列表：&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.ditran.net/self-hosted-nettcp-wcf-silverlight-4"&gt;Self-hosted NET.TCP WCF for Silverlight 4&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.silverlightshow.net/items/WCF-NET.TCP-Protocol-in-Silverlight-4.aspx"&gt;WCF NET.TCP Protocol in Silverlight&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc645032(VS.95).aspx"&gt;Network Security Access Restrictions in Silverlight&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.cnblogs.com/homezzm/archive/2009/12/17/1626264.html"&gt;Silverlight4中用net.tcp双工方式进行通信&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;差不多了准备开工，按照《&lt;a href="http://www.cnblogs.com/homezzm/archive/2009/12/17/1626264.html"&gt;Silverlight4中用net.tcp双工方式进行通信&lt;/a&gt;》这篇文章第一个问题很快出来了，我的VS2010下面在线模板没有&amp;rdquo;silverlight tcp socket policy(cs)&amp;ldquo;这个模板，你们能找到不，反正我是没找到。&lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/201105162240532207.png"&gt;&lt;img height="333" width="537" src="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/201105162241049099.png" alt="wcf_tcp_SilverlightTCPSocketPolicyServer" border="0" title="wcf_tcp_SilverlightTCPSocketPolicyServer" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;于是直接下载人家的代码把里面的policyserver直接弄到自己的工程里。别说，还真好使，编译通过了，监听端口也找到了，于是开始片客户端调用，很快就OK了。开始运行程序，心里这个美&amp;hellip;&amp;ldquo;找啊找啊找朋友，找到一个好朋友&amp;hellip;&amp;rdquo;，下场不用说了，开始报错。报错信息如下：&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;Could not connect to net.tcp://localhost:4502/MyService. The connection attempt lasted for a time span of 00:00:00.4270427. TCP error code 10013: An attempt was made to access a socket in a way forbidden by its access permissions.. This could be due to attempting to access a service in a cross-domain way while the service is not configured for cross-domain access. You may need to contact the owner of the service to expose a sockets cross-domain policy over HTTP and host the service in the allowed sockets port range 4502-4534.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;而且报的是跨域访问的错，我KAO不是吧。在网上查了，有什么写XML文件的，有写代码的，五花八门。我就开始虚心的一个个试啊。能想到的都想到了就是没有结果。还好我装的是英文的IDE，直接把报错信息放到GOOGLE上搜索，我又找到了一个新说法&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/b/silverlightws/archive/2010/04/09/policy-file-for-nettcp.aspx"&gt;Policy file for NetTcp&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;一句话概括：制作如下XML文件，命名为clientaccesspolicy.xml ，将其放置在IIS根目录下（一定要与程序配置文件中设定的IP一样），采用80端口能够访问。&lt;/p&gt;&lt;span class="kwrd"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="html"&gt;xml&lt;/span&gt; &lt;span class="attr"&gt;version&lt;/span&gt;&lt;span class="kwrd"&gt;="1.0"&lt;/span&gt; &lt;span class="attr"&gt;encoding&lt;/span&gt;&lt;span class="kwrd"&gt;="utf-8"&lt;/span&gt;?&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;access-policy&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;cross-domain-access&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;policy&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;allow-from&lt;/span&gt; &lt;span class="attr"&gt;http-request-headers&lt;/span&gt;&lt;span class="kwrd"&gt;="*"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;domain&lt;/span&gt; &lt;span class="attr"&gt;uri&lt;/span&gt;&lt;span class="kwrd"&gt;="*"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;allow-from&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;grant-to&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;socket-resource&lt;/span&gt; &lt;span class="attr"&gt;port&lt;/span&gt;&lt;span class="kwrd"&gt;="4502-4534"&lt;/span&gt; &lt;span class="attr"&gt;protocol&lt;/span&gt;&lt;span class="kwrd"&gt;="tcp"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;grant-to&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;policy&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;cross-domain-access&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;access-policy&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;测试一切正常。找啊找啊找朋友，找到一个好朋友&amp;hellip;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2048206.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/16/2048206.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/15/2046894.html</id><title type="text">RadControls for Silverlight（学习2-RadDataPager)</title><summary type="text">&lt;Grid x:Name="LayoutRoot" Loaded="LayoutRoot_Loaded"&gt; &lt;StackPanel&gt; &lt;telerik:RadGridView Name="radGridView1" AutoGenerateColumns="True" ShowGroupPanel="False" IsFilteringAllowed="False" IsReadOnly="True" CanUserFreez</summary><published>2011-05-15T07:00:00Z</published><updated>2011-05-15T07:00:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/15/2046894.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/15/2046894.html"/><content type="html"> &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="LayoutRoot"&lt;/span&gt; &lt;span class="attr"&gt;Loaded&lt;/span&gt;&lt;span class="kwrd"&gt;="LayoutRoot_Loaded"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView&lt;/span&gt; &lt;span class="attr"&gt;Name&lt;/span&gt;&lt;span class="kwrd"&gt;="radGridView1"&lt;/span&gt; &lt;span class="attr"&gt;AutoGenerateColumns&lt;/span&gt;&lt;span class="kwrd"&gt;="True"&lt;/span&gt; &lt;span class="attr"&gt;ShowGroupPanel&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt; &lt;span class="attr"&gt;IsFilteringAllowed&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt;&lt;br/&gt;                                 &lt;span class="attr"&gt;IsReadOnly&lt;/span&gt;&lt;span class="kwrd"&gt;="True"&lt;/span&gt; &lt;span class="attr"&gt;CanUserFreezeColumns&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt; &lt;span class="attr"&gt;CanUserReorderColumns&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt; &lt;span class="attr"&gt;CanUserSortColumns&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt; &lt;span class="attr"&gt;ColumnWidth&lt;/span&gt;&lt;span class="kwrd"&gt;="100"&lt;/span&gt; &lt;br/&gt;                                   &lt;strong&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span class="attr"&gt;ItemsSource&lt;/span&gt;&lt;span class="kwrd"&gt;="{Binding PagedSource, ElementName=dataPager}"&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span class="kwrd"&gt;&lt;strong&gt;&lt;span style="text-decoration: underline;"&gt;/&lt;/span&gt;&lt;/strong&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadDataPager&lt;/span&gt; &lt;span class="attr"&gt;Name&lt;/span&gt;&lt;span class="kwrd"&gt;="dataPager"&lt;/span&gt; &lt;span class="attr"&gt;PageSize&lt;/span&gt;&lt;span class="kwrd"&gt;="20"&lt;/span&gt; &lt;span class="attr"&gt;AutoEllipsisMode&lt;/span&gt;&lt;span class="kwrd"&gt;="Both"&lt;/span&gt;  &lt;span class="attr"&gt;DisplayMode&lt;/span&gt;&lt;span class="kwrd"&gt;="All"&lt;/span&gt; &lt;span class="attr"&gt;NumericButtonCount&lt;/span&gt;&lt;span class="kwrd"&gt;="10"&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;           &lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;span class="kwrd"&gt;&lt;/span&gt;&lt;span class="kwrd"&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/201105151500099750.jpg"&gt;&lt;img height="186" width="732" src="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/20110515150010665.jpg" alt="无标题" border="0" title="无标题" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;p&gt;&lt;b&gt;常用属性&lt;/b&gt;&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="148" valign="top"&gt;&lt;p&gt;常用属性&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;说明&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;DEMO名称&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="148" valign="top"&gt;&lt;p&gt;pagesize&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;设置页面显示数据行数据&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="148" valign="top"&gt;&lt;p&gt;AutoEllipsisMode&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;导航条上是否显示省略号&lt;/p&gt;&lt;p&gt;After&lt;/p&gt;&lt;p&gt;Before&lt;/p&gt;&lt;p&gt;All&lt;/p&gt;&lt;p&gt;None&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Pageing configurator&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="148" valign="top"&gt;&lt;p&gt;displaymode&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;导航条显示样式&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Pageing configurator&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="148" valign="top"&gt;&lt;p&gt;NumericButtonCount&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;导航页数&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Pageing configurator&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;在采用远程数据传输时尽量采用分页面形式传输数据！或通过代码编写方式take指定数量数据&lt;/p&gt;&lt;p&gt;测试条件：900条数据采用wcf service提供&lt;/p&gt;&lt;p&gt;&lt;img height="432" width="798" src="http://pic002.cnblogs.com/images/2011/2121/2011051523445433.jpg" /&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2046894.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/15/2046894.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/13/2045859.html</id><title type="text">RadControls for Silverlight（学习1-RadGridView)</title><summary type="text">引用：Telerik（官 网：http://www.telerik.com/）是保加利亚的一个软件公司，专注于微软.Net平台的表示层与内容管理控件。我们提供高度稳定性和丰富性能的组件产品，并可应用在非常严格的环境中。现在拥有 Microsoft, HP, Alcoa, BP, Harper Collins, Siemens, T-Mobile, HJ Heinz和一些最主要的教育机构和很多政府机关等客户。 我在使用的版本是RadControls_for_Silverlight4_2011_1_0316，开发工具采用VS2010 +SQLServer2008R2进行测试学习 Grid是我们做系</summary><published>2011-05-13T13:40:00Z</published><updated>2011-05-13T13:40:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/13/2045859.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/13/2045859.html"/><content type="html">&lt;p&gt;&lt;a href="http://www.cnblogs.com/xj0112/archive/2010/07/18/1780155.html"&gt;引用&lt;/a&gt;：Telerik（官 网：&lt;a href="http://www.telerik.com/"&gt;http://www.telerik.com/&lt;/a&gt;）是保加利亚的一个软件公司，专注于微软.Net平台的表示层与内容管理控件。我们提供高度稳定性和丰富性能的组件产品，并可应用在非常严格的环境中。现在拥有 Microsoft, HP, Alcoa, BP, Harper Collins, Siemens, T-Mobile, HJ Heinz和一些最主要的教育机构和很多政府机关等客户。 &lt;/p&gt;&lt;p&gt;我在使用的版本是RadControls_for_Silverlight4_2011_1_0316，开发工具采用VS2010 +SQLServer2008R2进行测试学习 &lt;/p&gt;&lt;p&gt;Grid是我们做系统必不可少的控件了，所以我准备从这个开始，为自己留下学习痕迹。 &lt;/p&gt;&lt;p&gt;先是了解控件属性便于下一步学习，常用属性 &lt;/p&gt;&lt;p&gt;RadGridView&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;常用属性&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;说明&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;DEMO名称&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;AutoGenerateColumns="False"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否自动产生列&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;IsReadOnly="True" &lt;/p&gt;&lt;p&gt;IsReadOnly="{Binding IsChecked, Mode=TwoWay, ElementName=IsReadOnlyCheckBox}"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否只读&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Click Event &lt;/p&gt;&lt;p&gt;command&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;ShowGroupPanel="False"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否显示分组面板（常用，一般情况下是不会用到这个的）&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;DataLoadMode="Asynchronous"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;数据加载模式&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;RowIndicatorVisibility="Collapsed"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;行指示&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;SelectionMode="Extended" &lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Command&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;CanUserDeleteRows="{Binding IsChecked, Mode=TwoWay, ElementName=CanUserDeleteRowsCheckBox}"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否可删除行&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Command&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;ScrollViewer.HorizontalScrollBarVisibility="Auto" &lt;/p&gt;&lt;p&gt;ScrollViewer.VerticalScrollBarVisibility="Auto"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;横向竖向滚动条设定&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;IsFilteringAllowed="False"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;列过滤查询是否可用&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Enable/Disable&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;ShowColumnFooters="True" &lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否显示列脚&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Totals&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;ShowGroupFooters="True"&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;是否显示分组列脚&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;Totals&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="657" valign="top"&gt;&lt;p&gt;GridLinesVisibility= &lt;/p&gt;&lt;p&gt;Both &lt;/p&gt;&lt;p&gt;Horizontal &lt;/p&gt;&lt;p&gt;Vertical&lt;/p&gt;&lt;/td&gt;&lt;td width="200" valign="top"&gt;&lt;p&gt;网络线设置&lt;/p&gt;&lt;/td&gt;&lt;td width="226" valign="top"&gt;&lt;p&gt;gridlinevisiblity&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;strong&gt;GridViewDataColumn&lt;/strong&gt;&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="217" valign="top"&gt;&lt;p&gt;属性&lt;/p&gt;&lt;/td&gt;&lt;td width="139" valign="top"&gt;&lt;p&gt;说明&lt;/p&gt;&lt;/td&gt;&lt;td width="101" valign="top"&gt;&lt;p&gt;DEMO名称&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="217" valign="top"&gt;&lt;p&gt;IsGroupable="False" &lt;/p&gt;&lt;/td&gt;&lt;td width="139" valign="top"&gt;&lt;p&gt;列是否加入分组&lt;/p&gt;&lt;/td&gt;&lt;td width="101" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="217" valign="top"&gt;&lt;p&gt;IsFilterable="False"&lt;/p&gt;&lt;/td&gt;&lt;td width="139" valign="top"&gt;&lt;p&gt;列是否可过滤查询&lt;/p&gt;&lt;/td&gt;&lt;td width="101" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="217" valign="top"&gt;&lt;p&gt;IsSortable="False" &lt;/p&gt;&lt;/td&gt;&lt;td width="139" valign="top"&gt;&lt;p&gt;列是否可排序&lt;/p&gt;&lt;/td&gt;&lt;td width="101" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="217" valign="top"&gt;&lt;p&gt;DataFormatString="{}{0:c2}" &lt;/p&gt;&lt;p&gt;DataFormatString="{}{0:d}"&lt;/p&gt;&lt;/td&gt;&lt;td width="139" valign="top"&gt;&lt;p&gt;列输入格式&lt;/p&gt;&lt;/td&gt;&lt;td width="101" valign="top"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;strong&gt;GridViewDataColumn.FilteringControl&lt;/strong&gt; :可自定义表头查询控件 &lt;/p&gt;&lt;p&gt;&lt;strong&gt;1&lt;/strong&gt;&lt;strong&gt;、产生自动编号-Row Number&lt;/strong&gt; &lt;/p&gt;&lt;p&gt;&amp;middot; 自定义列与绑定列并存 &lt;/p&gt;XAML&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="RadGridView1"&lt;/span&gt; &lt;span class="attr"&gt;ItemsSource&lt;/span&gt;&lt;span class="kwrd"&gt;="{Binding Customers}"&lt;/span&gt; &lt;span class="attr"&gt;AutoGeneratingColumn&lt;/span&gt;&lt;span class="kwrd"&gt;="RadGridView1_AutoGeneratingColumn"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView.Columns&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;custom:MyColumn&lt;/span&gt; &lt;span class="attr"&gt;Header&lt;/span&gt;&lt;span class="kwrd"&gt;="#"&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;="50"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView.Columns&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&amp;nbsp;&lt;p&gt;&amp;middot; 自动绑定后的列取消功能（如果取消的列较多，还是需要考虑用别的方法替代） &lt;/p&gt; &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; RadGridView1_AutoGeneratingColumn(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, Telerik.Windows.Controls.GridViewAutoGeneratingColumnEventArgs e)&lt;br/&gt;        {&lt;br/&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (e.Column.UniqueName == &lt;span class="str"&gt;"Order"&lt;/span&gt; || e.Column.UniqueName == &lt;span class="str"&gt;"Product"&lt;/span&gt;) &lt;br/&gt;            {&lt;br/&gt;                e.Cancel = &lt;span class="kwrd"&gt;true&lt;/span&gt;;&lt;br/&gt;            }&lt;br/&gt;        }&lt;br/&gt;&lt;p&gt;&amp;middot; 自定义列的处理&lt;/p&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; MyColumn : Telerik.Windows.Controls.GridViewColumn&lt;br/&gt;    {&lt;br/&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; FrameworkElement CreateCellElement(Telerik.Windows.Controls.GridView.GridViewCell cell, &lt;span class="kwrd"&gt;object&lt;/span&gt; dataItem)&lt;br/&gt;        {&lt;br/&gt;            TextBlock textBlock = cell.Content &lt;span class="kwrd"&gt;as&lt;/span&gt; TextBlock;&lt;br/&gt; &lt;br/&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (textBlock == &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;            {&lt;br/&gt;                textBlock = &lt;span class="kwrd"&gt;new&lt;/span&gt; TextBlock();&lt;br/&gt;            }&lt;br/&gt; &lt;br/&gt;            textBlock.Text = (&lt;span class="kwrd"&gt;this&lt;/span&gt;.DataControl.Items.IndexOf(dataItem) + 1).ToString();&lt;br/&gt; &lt;br/&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; textBlock;&lt;br/&gt;        }&lt;br/&gt;    }&lt;br/&gt; &lt;br/&gt;&lt;p&gt;&lt;strong&gt;2&lt;/strong&gt;&lt;strong&gt;、行、列、单元格只读设置&lt;/strong&gt;&lt;/p&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ChangeEnableStateColumn(&lt;span class="kwrd"&gt;bool&lt;/span&gt; isEnabled)&lt;br/&gt;   {&lt;br/&gt;            GridViewHeaderRow headerRow = RadGridView1.ChildrenOfType&amp;lt;GridViewHeaderRow&amp;gt;().FirstOrDefault();&lt;br/&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (headerRow != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;            {&lt;br/&gt;                GridViewCellBase cell = (from c &lt;span class="kwrd"&gt;in&lt;/span&gt; headerRow.Cells&lt;br/&gt;                                        &lt;span class="kwrd"&gt;where&lt;/span&gt; c.Column.UniqueName == &lt;span class="str"&gt;"EmployeeID"&lt;/span&gt;&lt;br/&gt;                                             select c).FirstOrDefault();&lt;br/&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (cell != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                {&lt;br/&gt;                    cell.IsEnabled = isEnabled;&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt; &lt;br/&gt;            &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (&lt;span class="kwrd"&gt;object&lt;/span&gt; item &lt;span class="kwrd"&gt;in&lt;/span&gt; RadGridView1.Items)&lt;br/&gt;            {&lt;br/&gt;                GridViewRow row = RadGridView1.ItemContainerGenerator.ContainerFromItem(item) &lt;span class="kwrd"&gt;as&lt;/span&gt; GridViewRow;&lt;br/&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (row != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                {&lt;br/&gt;                    GridViewCellBase cell = (from c &lt;span class="kwrd"&gt;in&lt;/span&gt; row.Cells&lt;br/&gt;                                             &lt;span class="kwrd"&gt;where&lt;/span&gt; c.Column.UniqueName == &lt;span class="str"&gt;"EmployeeID"&lt;/span&gt;&lt;br/&gt;                                             select c).FirstOrDefault();&lt;br/&gt;                    &lt;span class="kwrd"&gt;if&lt;/span&gt; (cell != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                    {&lt;br/&gt;                        cell.IsEnabled = isEnabled;&lt;br/&gt;                    }&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt;  }&lt;br/&gt; &lt;br/&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ChangeEnableStateCell(&lt;span class="kwrd"&gt;bool&lt;/span&gt; isEnabled)&lt;br/&gt;{&lt;br/&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (RadGridView1.Items.Count &amp;gt; 0)&lt;br/&gt;            {&lt;br/&gt;                GridViewRow row = RadGridView1.ItemContainerGenerator.ContainerFromItem(RadGridView1.Items[0]) &lt;span class="kwrd"&gt;as&lt;/span&gt; GridViewRow;&lt;br/&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (row != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                {&lt;br/&gt;                    GridViewCellBase cell = (from c &lt;span class="kwrd"&gt;in&lt;/span&gt; row.Cells&lt;br/&gt;                                             &lt;span class="kwrd"&gt;where&lt;/span&gt; c.Column.UniqueName == &lt;span class="str"&gt;"EmployeeID"&lt;/span&gt;&lt;br/&gt;                                             select c).FirstOrDefault();&lt;br/&gt;                    &lt;span class="kwrd"&gt;if&lt;/span&gt; (cell != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                    {&lt;br/&gt;                        cell.IsEnabled = isEnabled;&lt;br/&gt;                    }&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt;}&lt;br/&gt; &lt;br/&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ChangeEnableStateRow(&lt;span class="kwrd"&gt;bool&lt;/span&gt; isEnabled)&lt;br/&gt;        {&lt;br/&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (RadGridView1.Items.Count &amp;gt; 0)&lt;br/&gt;            {&lt;br/&gt;                GridViewRow row = RadGridView1.ItemContainerGenerator.ContainerFromItem(RadGridView1.Items[0]) &lt;span class="kwrd"&gt;as&lt;/span&gt; GridViewRow;&lt;br/&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (row != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;br/&gt;                {&lt;br/&gt;                    row.IsEnabled = isEnabled;&lt;br/&gt;                }&lt;br/&gt;            }&lt;br/&gt;}&lt;br/&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;XAML&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="RadGridView1"&lt;/span&gt; &lt;span class="attr"&gt;ItemsSource&lt;/span&gt;&lt;span class="kwrd"&gt;="{Binding Customers}"&lt;/span&gt; &lt;span class="attr"&gt;AutoGeneratingColumn&lt;/span&gt;&lt;span class="kwrd"&gt;="RadGridView1_AutoGeneratingColumn"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView.Columns&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;custom:MyColumn&lt;/span&gt; &lt;span class="attr"&gt;Header&lt;/span&gt;&lt;span class="kwrd"&gt;="#"&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;="50"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView.Columns&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;telerik:RadGridView&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;p&gt;3、设置网格线颜色&lt;/p&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; VerticalGridLinesColorPicker_SelectedColorChanged(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;br/&gt;{&lt;br/&gt;RadGridView1.VerticalGridLinesBrush = &lt;span class="kwrd"&gt;new&lt;/span&gt; SolidColorBrush(VerticalGridLinesColorPicker.SelectedColor);&lt;br/&gt;}&lt;br/&gt; &lt;br/&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; HorizontalGridLinesColorPicker_SelectedColorChanged(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;br/&gt;{&lt;br/&gt;RadGridView1.HorizontalGridLinesBrush = &lt;span class="kwrd"&gt;new&lt;/span&gt; SolidColorBrush(HorizontalGridLinesColorPicker.SelectedColor);&lt;br/&gt;}      &lt;br/&gt;&lt;p&gt;4、保存用户对网格的设置 &lt;/p&gt;&lt;p&gt;DEMO中saveandload settings中的Radgridviewsetting.cs非常用用：)&lt;/p&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2045859.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/13/2045859.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/12/2044074.html</id><title type="text">Devexpress XtraTreeList 加载速度问题</title><summary type="text">测试一：建立一个测试工程，放入一个button和一个xtratreelist控件，在button事件中加入如下代码 private void simpleButton1_Click(object sender, EventArgs e) { treeList1.Nodes.Clear(); int nodecount = 30000; for (int i = 0; i &lt; nodecount; i++) { treeList1.AppendNode(new object[] {i.ToString(),"列2","列3","列4&amp;quo</summary><published>2011-05-12T02:18:00Z</published><updated>2011-05-12T02:18:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/12/2044074.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/12/2044074.html"/><content type="html">&lt;a href="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/20110512101755136.jpg"&gt;&lt;img height="354" width="563" src="http://images.cnblogs.com/cnblogs_com/forrestsun/201105/201105121017558218.jpg" alt="Snap1" border="0" title="Snap1" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" /&gt;&lt;/a&gt;&lt;p&gt;&lt;strong&gt;测试一：&lt;/strong&gt;建立一个测试工程，放入一个button和一个xtratreelist控件，在button事件中加入如下代码&lt;/p&gt;     &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; simpleButton1_Click(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;br/&gt;        {&lt;br/&gt;            &lt;br/&gt;            treeList1.Nodes.Clear();&lt;br/&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; nodecount = 30000;&lt;br/&gt;            &lt;span class="kwrd"&gt;for&lt;/span&gt; (&lt;span class="kwrd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; nodecount; i++)&lt;br/&gt;            {&lt;br/&gt;                treeList1.AppendNode(&lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt;[] {i.ToString(),&lt;span class="str"&gt;"列2"&lt;/span&gt;,&lt;span class="str"&gt;"列3"&lt;/span&gt;,&lt;span class="str"&gt;"列4"&lt;/span&gt; },&lt;span class="kwrd"&gt;null&lt;/span&gt;);&lt;br/&gt;            } &lt;br/&gt;        }&lt;p&gt;当点击按钮后就要开始等待（才三万条数据）。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;测试二：&lt;/strong&gt;测试一中的这个问题比较显性，呵呵，为什么这么说呢，因为我们工程中实现时是这样的。由于工程采用向导模式（当时在向导模式里的其它代码绕了半天），&lt;/p&gt;&lt;p&gt;我简化了一下代码如下（需要先将xtralist控件的visible属性设置为false，其它不变，这样可以直接看到问题）：&lt;/p&gt;&lt;pre class="csharpcode"&gt;    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; simpleButton1_Click(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;br/&gt;        {&lt;br/&gt;           &lt;strong&gt; &lt;span style="background-color: #cccccc;"&gt;treeList1.Visible = &lt;span class="kwrd"&gt;false&lt;/span&gt;;&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;            treeList1.Nodes.Clear();&lt;br/&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; nodecount = 30000;&lt;br/&gt;            &lt;span class="kwrd"&gt;for&lt;/span&gt; (&lt;span class="kwrd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; nodecount; i++)&lt;br/&gt;            {&lt;br/&gt;                treeList1.AppendNode(&lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt;[] {i.ToString(),&lt;span class="str"&gt;"列2"&lt;/span&gt;,&lt;span class="str"&gt;"列3"&lt;/span&gt;,&lt;span class="str"&gt;"列4"&lt;/span&gt; },&lt;span class="kwrd"&gt;null&lt;/span&gt;);&lt;br/&gt;            }&lt;br/&gt;           &lt;span style="background-color: #cccccc;"&gt; &lt;strong&gt;treeList1.Visible = &lt;span class="kwrd"&gt;true&lt;/span&gt;;&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;        }这时我们运行程序后第一次点击速度会很快，但第二次点击时去像测试一的一样速度极慢，这是为什么呢？通过简化的代码可以理解为在不可见的情况下加载速度快，可第二次为什么又慢了呢？没太想明白（有时间看看控件源码，查下原理）&amp;nbsp;&lt;strong&gt;解决办法：在开始处及结尾处加入xtratreelist的begininit()及endinit()方法，对测试一、二均有效&lt;/strong&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;   &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; simpleButton1_Click(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;br/&gt;        {&lt;br/&gt;            &lt;strong&gt;&lt;span style="background-color: #cccccc;"&gt;treeList1.BeginInit();&lt;/span&gt;&lt;/strong&gt;&lt;br/&gt;            treeList1.Nodes.Clear();&lt;br/&gt;            &lt;span class="kwrd"&gt;int&lt;/span&gt; nodecount = 30000;&lt;br/&gt;            &lt;span class="kwrd"&gt;for&lt;/span&gt; (&lt;span class="kwrd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; nodecount; i++)&lt;br/&gt;            {&lt;br/&gt;                treeList1.AppendNode(&lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt;[] {i.ToString(),&lt;span class="str"&gt;"列2"&lt;/span&gt;,&lt;span class="str"&gt;"列3"&lt;/span&gt;,&lt;span class="str"&gt;"列4"&lt;/span&gt; },&lt;span class="kwrd"&gt;null&lt;/span&gt;);&lt;br/&gt;            }&lt;br/&gt;            &lt;span style="background-color: #cccccc;"&gt;&lt;strong&gt;treeList1.EndInit();&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;        }&lt;br/&gt;希望有此类的问题的朋友能少绕围路：）&amp;nbsp;通过对xtratreelist代码分析发现其实现了&lt;span color="#bd1717" style="color: #bd1717;"&gt;&lt;span style="color: #000000;"&gt;ISupportInitialize接口，《&lt;/span&gt;&lt;a href="http://www.cnblogs.com/yanrongpi/archive/2006/09/01/492566.html" class="postTitle2" id="ctl02_TitleUrl"&gt;&lt;span color="#bd1717" style="color: #bd1717;"&gt;&lt;span style="color: #000000;"&gt;详细解释ISupportInitialize接口&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #000000;"&gt; 》对ISupportInitialize有详细描述。&lt;/span&gt;&lt;/span&gt;&lt;style&gt;&lt;!--.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }--&gt;&lt;/style&gt;&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2044074.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/12/2044074.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042619.html</id><title type="text">linq语句转SQL语句</title><summary type="text">这段时间LINQ 和SQL写少了！还是自己变老了？越来越不会变通了 问题： =============================================== var ret = from x in ls where ( string.IsNullOrEmpty(arg.QueryText) ? true : ( (x.a?? "").ToUpper().Contains(ar...</summary><published>2011-05-10T14:14:00Z</published><updated>2011-05-10T14:14:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042619.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042619.html"/><content type="html">&lt;p&gt;这段时间LINQ 和SQL写少了！还是自己变老了？越来越不会变通了&lt;/p&gt;  &lt;p&gt;问题：&lt;/p&gt;  &lt;p&gt;===============================================&lt;/p&gt;  &lt;p&gt;var ret = from x in ls   &lt;br /&gt;&amp;#160; where (    &lt;br /&gt;&amp;#160; string.IsNullOrEmpty(arg.QueryText) ? true :&amp;#160; &lt;br /&gt;&amp;#160; (    &lt;br /&gt;&amp;#160; (x.a?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; || (x.b?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; || (x.c?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; )    &lt;br /&gt;看到这个语句大致能明白其含义，但在转SQL时无从下手，期望答案    &lt;br /&gt;===============================================    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 问这个问题的前提是这个语句是在LINQ TO object中进行的查询，无法直接生成SQL语句，我盯着这个看了一晚上楞没找没看明白，与是想转成SQL语句再看，却发现自己退步到一定程度了，具然不知道如何手动转换。与是跑到csdn上找高手帮忙，却发现大家都去过五一了。    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 今天在抱着闰女出去玩时突然想到我为什么不转换成LINQ TO SQL进行测试呢，不管是VS2010自己还是第三方软件都可以自动转换成SQL语句，与是回来赶紧实现了一下。总算没让我白激动，结果如下：    &lt;br /&gt;select * from ls    &lt;br /&gt;where     &lt;br /&gt;upper(a) like QueryText&amp;#160; or    &lt;br /&gt;upper(b) like QueryText&amp;#160; or    &lt;br /&gt;upper(c) like QueryText&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 呵呵，就这么简单    &lt;br /&gt;需要注意（补充知识）：    &lt;br /&gt;string[] yy=new string[]{&amp;quot;test&amp;quot;};    &lt;br /&gt;var ret = from x in ls    &lt;br /&gt;&amp;#160; where (    &lt;br /&gt;&amp;#160; string.IsNullOrEmpty(arg.QueryText) ? true :&amp;#160; &lt;br /&gt;&amp;#160; (    &lt;br /&gt;&amp;#160; (x.a?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; || (x.b?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; || (x.c?? &amp;quot;&amp;quot;).ToUpper().Contains(arg.QueryText.ToUpper())    &lt;br /&gt;&amp;#160; &amp;amp;&amp;amp;&amp;#160; yy.Contains(x.d)    &lt;br /&gt;&amp;#160; )    &lt;br /&gt;这时的SQL语句为：    &lt;br /&gt;select * from ls    &lt;br /&gt;where     &lt;br /&gt;upper(a) like QueryText&amp;#160; or    &lt;br /&gt;upper(b) like QueryText&amp;#160; or    &lt;br /&gt;upper(c) like QueryText&amp;#160; and    &lt;br /&gt;d in (@p1)    &lt;br /&gt;再来一张小肥猫，哈哈:&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;img src="http://hi.csdn.net/attachment/201104/30/0_130417938915g5.gif" width="138" height="184" /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2042619.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042619.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042614.html</id><title type="text">Linq To Object查询问题</title><summary type="text">我的问题：http://topic.csdn.net/u/20110430/23/9ccd7f75-4d4b-49b1-9a76-f8c985b607dd.html?60564 =================================================================== public static void Linq5() { string[] digit...</summary><published>2011-05-10T14:11:00Z</published><updated>2011-05-10T14:11:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042614.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042614.html"/><content type="html">&lt;p&gt;我的问题：&lt;a href="http://topic.csdn.net/u/20110430/23/9ccd7f75-4d4b-49b1-9a76-f8c985b607dd.html?60564"&gt;http://topic.csdn.net/u/20110430/23/9ccd7f75-4d4b-49b1-9a76-f8c985b607dd.html?60564&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;===================================================================&lt;/p&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Linq5()&lt;br/&gt;  {&lt;br/&gt;         &lt;span class="kwrd"&gt;string&lt;/span&gt;[] digits = { &lt;span class="str"&gt;&amp;quot;zero&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;one&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;two&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;three&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;four&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;five&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;six&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;seven&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;eight&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;nine&amp;quot;&lt;/span&gt; };&lt;br/&gt;&lt;br/&gt;          var shortDigits = digits.Where((digit, index) =&amp;gt; digit.Length &amp;lt; index);&lt;br/&gt;&lt;br/&gt;          Console.WriteLine(&lt;span class="str"&gt;&amp;quot;Short digits:&amp;quot;&lt;/span&gt;);&lt;br/&gt;          &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (var d &lt;span class="kwrd"&gt;in&lt;/span&gt; shortDigits)&lt;br/&gt;          {&lt;br/&gt;               Console.WriteLine(&lt;span class="str"&gt;&amp;quot;The word {0} is shorter than its value.&amp;quot;&lt;/span&gt;, d);&lt;br/&gt;           }&lt;br/&gt;  }&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;p&gt;相信各位对这个linq都很熟悉，我现在突然搞不明白了：）  &lt;br /&gt;其中where条件中有一个digit,我理解为是digits中的一个值（不知道对不对）l  &lt;br /&gt;那么这个index(理论上应该是当前位置）&lt;/p&gt;&lt;p&gt;可我就是弄不明白了这些参数是从那里来的，呵呵，钻牛角尖里去了，请各位高手帮忙解释下&lt;/p&gt;&lt;p&gt;=====================================================================&lt;/p&gt;&lt;p&gt;发完贴看没人理我，呵呵，估计都过五一去玩了，还是自力更生吧。&lt;/p&gt;&lt;p&gt;找了半天没找到个结果，在where语句停下时眇了一眼提示，发现方法是重载的，点到下一个一看，明白了：）&lt;/p&gt;&lt;p&gt;还是自已的基础知识不够扎实啊，下面的微软的具体解释：&lt;/p&gt;&lt;p&gt;Enumerable.Where&amp;lt;TSource&amp;gt; 方法 (IEnumerable&amp;lt;TSource&amp;gt;, Func&amp;lt;TSource, Int32, Boolean&amp;gt;)  &lt;br /&gt;public static IEnumerable&amp;lt;TSource&amp;gt; Where&amp;lt;TSource&amp;gt;(  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; this IEnumerable&amp;lt;TSource&amp;gt; source,  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Func&amp;lt;TSource, int, bool&amp;gt; predicate  &lt;br /&gt;)&lt;/p&gt;&lt;p&gt;类型参数  &lt;br /&gt;TSource   &lt;br /&gt;source 中的元素的类型。 &lt;/p&gt;&lt;p&gt;参数  &lt;br /&gt;source   &lt;br /&gt;类型：System.Collections.Generic.IEnumerable&amp;lt;TSource&amp;gt;  &lt;br /&gt;要筛选的 IEnumerable&amp;lt;T&amp;gt;。&lt;/p&gt;&lt;p&gt;predicate   &lt;br /&gt;类型：System.Func&amp;lt;TSource, Int32, Boolean&amp;gt;  &lt;br /&gt;用于测试每个源元素是否满足条件的函数；该函数的第二个参数表示源元素的索引。&lt;/p&gt;&lt;p&gt;返回值  &lt;br /&gt;类型：System.Collections.Generic.IEnumerable&amp;lt;TSource&amp;gt;  &lt;br /&gt;一个 IEnumerable&amp;lt;T&amp;gt;，包含输入序列中满足条件的元素。&lt;/p&gt;&lt;p&gt;  &lt;br /&gt;各参数的产生：“类型：System.Func&amp;lt;TSource, Int32, Boolean&amp;gt;用于测试每个源元素是否满足条件的函数；该函数的第二个参数表示源元素的索引。”，世界安静了！&lt;/p&gt;&lt;p&gt;总结：微软希望使我们减少编程的复杂度，但要记下来的东西却增加了：）&lt;/p&gt;&lt;p&gt;越来越喜欢这个狂奔中的小肥猫了，再专门贴一个&lt;/p&gt;&lt;p&gt;&lt;img src="http://hi.csdn.net/attachment/201104/30/0_130417938915g5.gif" width="118" height="157" /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2042614.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042614.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042610.html</id><title type="text">问题排查-不要忽略基础性东西的检测</title><summary type="text">今天公司软件在部署的客户处报错，首先对整个系统（B/S+C/S)进行了简单的排查未发现问题，所以重点考虑到了程序底层是不是由于用户环境不同造成的程序问题。由于系统过于庞大且当初开发时时间紧任务重，对日志处理方面做的不够完善，且系统已前期部署到了用户处，所以排查起来很困难。 通过三天的排查，最终定位到了一个调度系统上。由于用户在安装完系统后感觉操作系统有问题，于是将整个系统复制出来到另一台机器造...</summary><published>2011-05-10T14:08:00Z</published><updated>2011-05-10T14:08:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042610.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042610.html"/><content type="html">&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 今天公司软件在部署的客户处报错，首先对整个系统（B/S+C/S)进行了简单的排查未发现问题，所以重点考虑到了程序底层是不是由于用户环境不同造成的程序问题。由于系统过于庞大且当初开发时时间紧任务重，对日志处理方面做的不够完善，且系统已前期部署到了用户处，所以排查起来很困难。&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 通过三天的排查，最终定位到了一个调度系统上。由于用户在安装完系统后感觉操作系统有问题，于是将整个系统复制出来到另一台机器造成调度系统，造成只有对外发布的网站数据连接字符串进行了修改，却未对调度系统进行处理。&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 从中发现有时在考虑问题时不能上来先把自己扔进代码里找问题，同时在系统的易用性方面有学到了一点东西。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2042610.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042610.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042600.html</id><title type="text">ASP.Net程序在IIS7的部署问题</title><summary type="text">正在做一个WEB测试程序，测试环境（win7 iis7 vs2010+sql2008)程序运行正常，因需要使用WCF HTTP激活所以从WIN7控件面板进行了添加。这时在VS2010环境的DEBUG下测试网站一切正常，但转到IIS7下运行去报如下错误： 未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyTo...</summary><published>2011-05-10T14:01:00Z</published><updated>2011-05-10T14:01:00Z</updated><author><name>forrestsun</name><uri>http://www.cnblogs.com/forrestsun/</uri></author><link rel="alternate" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042600.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042600.html"/><content type="html">&lt;p&gt;&lt;strong&gt;&lt;font face="微软雅黑"&gt;&lt;font style="font-weight: normal" size="3"&gt;正在做一个WEB测试程序，测试环境（win7 iis7 vs2010+sql2008)程序运行正常，因需要使用WCF HTTP激活所以从WIN7控件面板进行了添加。这时在VS2010环境的DEBUG下测试网站一切正常，但转到IIS7下运行去报如下错误：&lt;/font&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font face="微软雅黑"&gt;&lt;font style="font-weight: normal" size="3"&gt;未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加载类型“System.ServiceModel.Activation.HttpModule”。&lt;/font&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="微软雅黑"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 通过网络搜索解决方案如下：（&lt;/font&gt;&lt;a href="http://blog.csdn.net/acrodelphi/archive/2010/11/26/6037482.aspx"&gt;&lt;font size="3" face="微软雅黑"&gt;ASP.Net程序在IIS7的部署问题&lt;/font&gt;&lt;/a&gt;&lt;font size="3" face="微软雅黑"&gt;）其中”ceevuu”的回答解决了问题：&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="微软雅黑"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="微软雅黑"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 如果安装了 .NET Framework 4，随后启用了 .NET Framework 3.5 WCF HTTP 激活，则会发生此错误。若要解决该问题，请在 Visual Studio 2010 命令提示符下运行下面的命令行： aspnet_regiis.exe -i -enable 参见：http://msdn.microsoft.com/zh-cn/library/aa751852.aspx&lt;/font&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/forrestsun/aggbug/2042600.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/forrestsun/archive/2011/05/10/2042600.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
