1
using
System;
2
using
System.Collections;
3
using
System.ComponentModel;
4
using
System.Data;
5
using
System.Diagnostics;
6
using
System.Web;
7
using
System.Web.Services;
8
using
System.Web.UI.WebControls;
9
using
CrystalDecisions.Shared;
10
using
CrystalDecisions.CrystalReports.Engine;
11
using
System.IO;
12
using
System.Data.OleDb;
13
using
System.Web.UI;
14![](/Images/OutliningIndicators/None.gif)
15
namespace
WorkWebService
16![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
17![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
18
/// PrintService 的摘要说明。
19
/// </summary>
20
///
21
[WebService (Namespace="http://LocalHost/WorkWebService/", Description="A service displaying catalogs of Deepthoughts Publications")]
22
public class PrintService : System.Web.Services.WebService
23
24![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
25
private CrystalDecisions.CrystalReports.Engine.ReportDocument ReportDoc;
26
private TableLogOnInfo logOnInfo;
27
private DiskFileDestinationOptions FileOPS;
28
private ExportOptions ExOPS;
29
public PrintService()
30![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
31
//CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的
32
InitializeComponent();
33
ReportDoc=new ReportDocument();
34
logOnInfo=new TableLogOnInfo();
35
FileOPS=new DiskFileDestinationOptions();
36![](/Images/OutliningIndicators/InBlock.gif)
37
}
38![](/Images/OutliningIndicators/InBlock.gif)
39![](/Images/OutliningIndicators/ContractedSubBlock.gif)
组件设计器生成的代码#region 组件设计器生成的代码
40
41
//Web 服务设计器所必需的
42
private IContainer components = null;
43
44![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
45
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
46
/// 此方法的内容。
47
/// </summary>
48
private void InitializeComponent()
49![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
50
}
51![](/Images/OutliningIndicators/InBlock.gif)
52![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
53
/// 清理所有正在使用的资源。
54
/// </summary>
55
protected override void Dispose( bool disposing )
56![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
57
if(disposing && components != null)
58![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
59
components.Dispose();
60
}
61
base.Dispose(disposing);
62
}
63
64
#endregion
65![](/Images/OutliningIndicators/InBlock.gif)
66
// WEB 服务示例
67
// HelloWorld() 示例服务返回字符串 Hello World
68
// 若要生成,请取消注释下列行,然后保存并生成项目
69
// 若要测试此 Web 服务,请按 F5 键
70![](/Images/OutliningIndicators/InBlock.gif)
71
[WebMethod]
72
public string HelloWorld()
73![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
74
return "Hello World";
75
}
76![](/Images/OutliningIndicators/InBlock.gif)
77![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
78
/// 导出报表文件为PDF格式
79
/// </summary>
80
/// <param name="ReportFile">报表文件名称,调用时请使用Server.MapPath("报表文件.rpt")这样来给这个参数</param>
81
/// <param name="ReportDataSource">报表文件所使用的数据源,是一个Dataset</param>
82
/// <param name="PDFFileName">你要导成的目标文件名称,注意不要放在wwwroot等目录中,iis会不让你导出的</param>
83
/// <returns>bool型,成功返回true,失败返回false</returns>
84
[WebMethod ( Description="A service displaying catalogs of Deepthoughts Publications")]
85
public bool ExportToPDF(string ReportFile,object ReportDataSource,string PDFFileName)
86![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
87
try
88![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
89
ReportDoc.Load(ReportFile);
90
ReportDoc.SetDataSource(ReportDataSource);
91
FileOPS.DiskFileName=PDFFileName;
92
ExOPS=ReportDoc.ExportOptions;
93
ExOPS.DestinationOptions=FileOPS;
94
ExOPS.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
95
ExOPS.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
96
ReportDoc.Export();
97
return true;
98
}
99
catch
100![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
101
return false;
102
}
103
}
104![](/Images/OutliningIndicators/InBlock.gif)
105![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
106
/// 返回PDF文件到用户的IE浏览器中
107
/// </summary>
108
/// <param name="ReportFile">报表文件名称,调用时请使用Server.MapPath("报表文件.rpt")这样来给这个参数</param>
109
/// <param name="ReportDataSource">报表文件所使用的数据源,是一个Dataset</param>
110
/// <param name="page">用于显示PDF WebForm</param>
111
/// <returns></returns>
112
[WebMethod ( Description="A service displaying catalogs of Deepthoughts Publications")]
113
public bool ReturnPDF(string ReportFile,object ReportDataSource,System.Web.UI.Page page)
114![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
115
int temp;
116
temp=System.Convert.ToInt32(System.DateTime.Now.Millisecond.ToString());
117
System.Random ra=new System.Random(temp);
118
int TmpNumber=ra.Next();
119
string TmpPDFFileName="c:\\"+System.Convert.ToString(TmpNumber)+".pdf";
120
if (ExportToPDF(ReportFile,ReportDataSource,TmpPDFFileName)==true)
121![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
122
page.Response.ClearContent();
123
page.Response.ClearHeaders();
124
page.Response.ContentType="application/pdf";
125
page.Response.WriteFile(TmpPDFFileName);
126
page.Response.Flush();
127
page.Response.Close();
128
System.IO.File.Delete(TmpPDFFileName);
129
return true;
130
} else
131![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
132
return false;
133
}
134
}
135![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
/**//// <summary>
136
/// 导出报表文件为xls格式
137
/// </summary>
138
/// <param name="ReportFile">报表文件名称,调用时请使用Server.MapPath("报表文件.rpt")这样来给这个参数</param>
139
/// <param name="ReportDataSource">报表文件所使用的数据源,是一个Dataset</param>
140
/// <param name="XLSFileName">你要导成的目标文件名称,注意不要放在wwwroot等目录中,iis会不让你导出的</param>
141
/// <returns>bool成功返回true,失败返回false</returns>
142
[WebMethod ( Description="A service displaying catalogs of Deepthoughts Publications")]
143
public bool ExportToXLS(string ReportFile,object ReportDataSource,string XLSFileName)
144![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
145
try
146![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
147
ReportDoc.Load(ReportFile);
148
ReportDoc.SetDataSource(ReportDataSource);
149
FileOPS.DiskFileName=XLSFileName;
150
ExOPS=ReportDoc.ExportOptions;
151
ExOPS.DestinationOptions=FileOPS;
152
ExOPS.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
153
ExOPS.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.Excel;
154
ReportDoc.Export();
155
return true;
156
}
157
catch
158![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
159
return false;
160
}
161
}
162
[WebMethod ( Description="A service displaying catalogs of Deepthoughts Publications")]
163
public bool DataDownTOcsv(string sql,string filename,string tableheader1,string tableheader2,string columname,int columcount )
164![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
165
try
166![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
167
string strFileToOrg="",strBufferLine="",strBufferLine1="";
168
int i;
169
strFileToOrg = Server.MapPath("..\\pdf\\"+filename+".csv");
170
StreamWriter strmWriterObj=new StreamWriter(strFileToOrg,false,System.Text.Encoding.Default);//声明写入流对象
171
OleDbConnection OleDbConnection1=new OleDbConnection();
172
OleDbConnection1.ConnectionString="File Name="+HttpContext.Current.Server.MapPath("conn.udl");
173
OleDbConnection1.Open();
174
OleDbCommand cmdGenFile=new OleDbCommand();
175
cmdGenFile.Connection=OleDbConnection1;
176
cmdGenFile.CommandText=sql;
177
OleDbDataReader drGenFile=cmdGenFile.ExecuteReader();
178
strmWriterObj.WriteLine(tableheader1);
179
strmWriterObj.WriteLine(tableheader2);
180
strmWriterObj.WriteLine(columname);
181
while (drGenFile.Read())
182![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
183
strBufferLine="";
184
strBufferLine1=Convert.ToString(drGenFile.GetValue(0));
185
strBufferLine=strBufferLine1;
186
for (i=1;i<=(columcount-1);i++)
187![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
188
strBufferLine1="";
189
strBufferLine1=Convert.ToString(drGenFile.GetValue(i));
190
strBufferLine=strBufferLine+","+strBufferLine1;
191
}
192
strmWriterObj.WriteLine(strBufferLine);
193
}
194
strmWriterObj.Close();
195
drGenFile.Close();
196
return true;
197
}
198
catch
199![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
200
return false;
201
}
202
}
203![](/Images/OutliningIndicators/InBlock.gif)
204
}
205
}
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/None.gif)
14
![](/Images/OutliningIndicators/None.gif)
15
![](/Images/OutliningIndicators/None.gif)
16
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
17
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
18
![](/Images/OutliningIndicators/InBlock.gif)
19
![](/Images/OutliningIndicators/InBlock.gif)
20
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
21
![](/Images/OutliningIndicators/InBlock.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/InBlock.gif)
24
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
25
![](/Images/OutliningIndicators/InBlock.gif)
26
![](/Images/OutliningIndicators/InBlock.gif)
27
![](/Images/OutliningIndicators/InBlock.gif)
28
![](/Images/OutliningIndicators/InBlock.gif)
29
![](/Images/OutliningIndicators/InBlock.gif)
30
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
31
![](/Images/OutliningIndicators/InBlock.gif)
32
![](/Images/OutliningIndicators/InBlock.gif)
33
![](/Images/OutliningIndicators/InBlock.gif)
34
![](/Images/OutliningIndicators/InBlock.gif)
35
![](/Images/OutliningIndicators/InBlock.gif)
36
![](/Images/OutliningIndicators/InBlock.gif)
37
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
38
![](/Images/OutliningIndicators/InBlock.gif)
39
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
40
![](/Images/OutliningIndicators/InBlock.gif)
41
![](/Images/OutliningIndicators/InBlock.gif)
42
![](/Images/OutliningIndicators/InBlock.gif)
43
![](/Images/OutliningIndicators/InBlock.gif)
44
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
45
![](/Images/OutliningIndicators/InBlock.gif)
46
![](/Images/OutliningIndicators/InBlock.gif)
47
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
48
![](/Images/OutliningIndicators/InBlock.gif)
49
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
50
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
51
![](/Images/OutliningIndicators/InBlock.gif)
52
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
53
![](/Images/OutliningIndicators/InBlock.gif)
54
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
55
![](/Images/OutliningIndicators/InBlock.gif)
56
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
57
![](/Images/OutliningIndicators/InBlock.gif)
58
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
59
![](/Images/OutliningIndicators/InBlock.gif)
60
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
61
![](/Images/OutliningIndicators/InBlock.gif)
62
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
63
![](/Images/OutliningIndicators/InBlock.gif)
64
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
65
![](/Images/OutliningIndicators/InBlock.gif)
66
![](/Images/OutliningIndicators/InBlock.gif)
67
![](/Images/OutliningIndicators/InBlock.gif)
68
![](/Images/OutliningIndicators/InBlock.gif)
69
![](/Images/OutliningIndicators/InBlock.gif)
70
![](/Images/OutliningIndicators/InBlock.gif)
71
![](/Images/OutliningIndicators/InBlock.gif)
72
![](/Images/OutliningIndicators/InBlock.gif)
73
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
74
![](/Images/OutliningIndicators/InBlock.gif)
75
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
76
![](/Images/OutliningIndicators/InBlock.gif)
77
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
78
![](/Images/OutliningIndicators/InBlock.gif)
79
![](/Images/OutliningIndicators/InBlock.gif)
80
![](/Images/OutliningIndicators/InBlock.gif)
81
![](/Images/OutliningIndicators/InBlock.gif)
82
![](/Images/OutliningIndicators/InBlock.gif)
83
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
84
![](/Images/OutliningIndicators/InBlock.gif)
85
![](/Images/OutliningIndicators/InBlock.gif)
86
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
87
![](/Images/OutliningIndicators/InBlock.gif)
88
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
89
![](/Images/OutliningIndicators/InBlock.gif)
90
![](/Images/OutliningIndicators/InBlock.gif)
91
![](/Images/OutliningIndicators/InBlock.gif)
92
![](/Images/OutliningIndicators/InBlock.gif)
93
![](/Images/OutliningIndicators/InBlock.gif)
94
![](/Images/OutliningIndicators/InBlock.gif)
95
![](/Images/OutliningIndicators/InBlock.gif)
96
![](/Images/OutliningIndicators/InBlock.gif)
97
![](/Images/OutliningIndicators/InBlock.gif)
98
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
99
![](/Images/OutliningIndicators/InBlock.gif)
100
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
101
![](/Images/OutliningIndicators/InBlock.gif)
102
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
103
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
104
![](/Images/OutliningIndicators/InBlock.gif)
105
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
106
![](/Images/OutliningIndicators/InBlock.gif)
107
![](/Images/OutliningIndicators/InBlock.gif)
108
![](/Images/OutliningIndicators/InBlock.gif)
109
![](/Images/OutliningIndicators/InBlock.gif)
110
![](/Images/OutliningIndicators/InBlock.gif)
111
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
112
![](/Images/OutliningIndicators/InBlock.gif)
113
![](/Images/OutliningIndicators/InBlock.gif)
114
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
115
![](/Images/OutliningIndicators/InBlock.gif)
116
![](/Images/OutliningIndicators/InBlock.gif)
117
![](/Images/OutliningIndicators/InBlock.gif)
118
![](/Images/OutliningIndicators/InBlock.gif)
119
![](/Images/OutliningIndicators/InBlock.gif)
120
![](/Images/OutliningIndicators/InBlock.gif)
121
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
122
![](/Images/OutliningIndicators/InBlock.gif)
123
![](/Images/OutliningIndicators/InBlock.gif)
124
![](/Images/OutliningIndicators/InBlock.gif)
125
![](/Images/OutliningIndicators/InBlock.gif)
126
![](/Images/OutliningIndicators/InBlock.gif)
127
![](/Images/OutliningIndicators/InBlock.gif)
128
![](/Images/OutliningIndicators/InBlock.gif)
129
![](/Images/OutliningIndicators/InBlock.gif)
130
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
131
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
132
![](/Images/OutliningIndicators/InBlock.gif)
133
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
134
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
135
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
136
![](/Images/OutliningIndicators/InBlock.gif)
137
![](/Images/OutliningIndicators/InBlock.gif)
138
![](/Images/OutliningIndicators/InBlock.gif)
139
![](/Images/OutliningIndicators/InBlock.gif)
140
![](/Images/OutliningIndicators/InBlock.gif)
141
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
142
![](/Images/OutliningIndicators/InBlock.gif)
143
![](/Images/OutliningIndicators/InBlock.gif)
144
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
145
![](/Images/OutliningIndicators/InBlock.gif)
146
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
147
![](/Images/OutliningIndicators/InBlock.gif)
148
![](/Images/OutliningIndicators/InBlock.gif)
149
![](/Images/OutliningIndicators/InBlock.gif)
150
![](/Images/OutliningIndicators/InBlock.gif)
151
![](/Images/OutliningIndicators/InBlock.gif)
152
![](/Images/OutliningIndicators/InBlock.gif)
153
![](/Images/OutliningIndicators/InBlock.gif)
154
![](/Images/OutliningIndicators/InBlock.gif)
155
![](/Images/OutliningIndicators/InBlock.gif)
156
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
157
![](/Images/OutliningIndicators/InBlock.gif)
158
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
159
![](/Images/OutliningIndicators/InBlock.gif)
160
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
161
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
162
![](/Images/OutliningIndicators/InBlock.gif)
163
![](/Images/OutliningIndicators/InBlock.gif)
164
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
165
![](/Images/OutliningIndicators/InBlock.gif)
166
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
167
![](/Images/OutliningIndicators/InBlock.gif)
168
![](/Images/OutliningIndicators/InBlock.gif)
169
![](/Images/OutliningIndicators/InBlock.gif)
170
![](/Images/OutliningIndicators/InBlock.gif)
171
![](/Images/OutliningIndicators/InBlock.gif)
172
![](/Images/OutliningIndicators/InBlock.gif)
173
![](/Images/OutliningIndicators/InBlock.gif)
174
![](/Images/OutliningIndicators/InBlock.gif)
175
![](/Images/OutliningIndicators/InBlock.gif)
176
![](/Images/OutliningIndicators/InBlock.gif)
177
![](/Images/OutliningIndicators/InBlock.gif)
178
![](/Images/OutliningIndicators/InBlock.gif)
179
![](/Images/OutliningIndicators/InBlock.gif)
180
![](/Images/OutliningIndicators/InBlock.gif)
181
![](/Images/OutliningIndicators/InBlock.gif)
182
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
183
![](/Images/OutliningIndicators/InBlock.gif)
184
![](/Images/OutliningIndicators/InBlock.gif)
185
![](/Images/OutliningIndicators/InBlock.gif)
186
![](/Images/OutliningIndicators/InBlock.gif)
187
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
188
![](/Images/OutliningIndicators/InBlock.gif)
189
![](/Images/OutliningIndicators/InBlock.gif)
190
![](/Images/OutliningIndicators/InBlock.gif)
191
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
192
![](/Images/OutliningIndicators/InBlock.gif)
193
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
194
![](/Images/OutliningIndicators/InBlock.gif)
195
![](/Images/OutliningIndicators/InBlock.gif)
196
![](/Images/OutliningIndicators/InBlock.gif)
197
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
198
![](/Images/OutliningIndicators/InBlock.gif)
199
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
200
![](/Images/OutliningIndicators/InBlock.gif)
201
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
202
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
203
![](/Images/OutliningIndicators/InBlock.gif)
204
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
205
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)