温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:51aspx大文件上传并显示进度和上传速率示例及组建源码
当前文件:
LargeFileUpload/WebbUploadSample/Document.aspx,打开代码结构图
LargeFileUpload/WebbUploadSample/Document.aspx,打开代码结构图1<%@ Page language="c#" Codebehind="Document.aspx.cs" AutoEventWireup="True" Inherits="WebbUploadSample.Document" %> 2
<%@ Register TagPrefix="uc1" TagName="Inc_Top" Src="Inc_Top.ascx" %> 3
<%@ Register TagPrefix="uc1" TagName="Inc_Botton" Src="Inc_Botton.ascx" %> 4
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > 5
<HTML> 6
<HEAD> 7
<title>Document</title> 8
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> 9
<meta name="CODE_LANGUAGE" Content="C#"> 10
<meta name="vs_defaultClientScript" content="JavaScript"> 11
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> 12
</HEAD> 13
<body bottomMargin="0" leftMargin="0" background="images/bg_001.jpg" topMargin="0" rightMargin="0"> 14
<form id="Form1" method="post" runat="server"> 15
<TABLE id="Table1" cellSpacing="0" borderColorDark="#000000" cellPadding="0" width="800" 16
align="center" borderColorLight="darkgray" border="0"> 17
<TR> 18
<TD colSpan="3"> 19
<TABLE id="Table2" cellSpacing="0" cellPadding="0" width="100%" border="0"> 20
<TR> 21
<TD colSpan="3"> 22
<uc1:Inc_Top id="Inc_Top1" runat="server"></uc1:Inc_Top></TD> 23
</TR> 24
<TR> 25
<TD bgColor="whitesmoke" colSpan="3"> 26
<TABLE id="Table3" cellSpacing="2" cellPadding="2" width="100%" border="0"> 27
<TR> 28
<TD colSpan="3"><STRONG>Webb.WAVE.Controls.Upload大文件上传组件使用说明:</STRONG></TD> 29
</TR> 30
<TR> 31
<TD> 32
<P><SPAN class="style9">Class</SPAN></P> 33
</TD> 34
<TD><SPAN class="style2">Pethod/Properties/Enum</SPAN></TD> 35
<TD><SPAN class="style5">说明</SPAN></TD> 36
</TR> 37
<TR> 38
<TD>WebbUpload</TD> 39
<TD>WebbUpload ( )</TD> 40
<TD>构造函数。</TD> 41
</TR> 42
<TR> 43
<TD> </TD> 44
<TD>GetUploadFile ( System.String name )<BR> 45
</TD> 46
<TD>返回UplaodFile实例,参数name为input/type=file的Html控件名。</TD> 47
</TR> 48
<TR> 49
<TD> </TD> 50
<TD>GetUploadFileList ( System.String name )<BR> 51
</TD> 52
<TD>返回UplaodFileCollection实例,参数name为input/type=file的Html控件名。</TD> 53
</TR> 54
<TR> 55
<TD> </TD> 56
<TD>RegisterProgressBar ( System.Web.UI.WebControls.WebControl m_controls )<BR> 57
</TD> 58
<TD>注册控件的进度条,注意m_controls必须为一个可以实现onclick属性的HTML控件。</TD> 59
</TR> 60
<TR> 61
<TD> </TD> 62
<TD>RegisterProgressBar ( System.Web.UI.WebControls.Button uploadButton , 63
System.Boolean causesValidation )<BR> 64
</TD> 65
<TD>注册Button的进度条,causesValidation说明是否进行提交验证。</TD> 66
</TR> 67
<TR> 68
<TD> </TD> 69
<TD>SetTempPath ( System.String m_path )<BR> 70
</TD> 71
<TD>设定上传临时路径。m_path为服务 器绝对路径。 72
</TD> 73
</TR> 74
<TR> 75
<TD>UploadFile</TD> 76
<TD>UploadFile ( System.String i_name )<BR> 77
</TD> 78
<TD>构造函数,参数i_name为input/type=file的Html控件名。</TD> 79
</TR> 80
<TR> 81
<TD> </TD> 82
<TD>SaveAs ( System.String filename )<BR> 83
</TD> 84
<TD>保存上传的文件,filename为服务器绝对路径。</TD> 85
</TR> 86
<TR> 87
<TD> </TD> 88
<TD>string ClientFullPathName [ get]<BR> 89
</TD> 90
<TD>只读属性,文件在客户端上的文件名。</TD> 91
</TR> 92
<TR> 93
<TD> </TD> 94
<TD>string ContentType [ get]<BR> 95
</TD> 96
<TD>只读属性,文件content类型。</TD> 97
</TR> 98
<TR> 99
<TD> </TD> 100
<TD>string FileName [ get]<BR> 101
</TD> 102
<TD>只读属性,文件在服务器上的临时名。</TD> 103
</TR> 104
<TR> 105
<TD> </TD> 106
<TD>long FileSize [ get]<BR> 107
</TD> 108
<TD>只读属性,文件大小,字节单位。</TD> 109
</TR> 110
<TR> 111
<TD> </TD> 112
<TD>string ExtendName [ get]<BR> 113
</TD> 114
<TD>只读属性,文件扩展名。</TD> 115
</TR> 116
<TR> 117
<TD>UploadFileCollection</TD> 118
<TD>public void Add ( Webb.WAVE.Controls.Upload.UploadFile File )<BR> 119
</TD> 120
<TD>文件集。</TD> 121
</TR> 122
<TR> 123
<TD> </TD> 124
<TD>public virtual new void CopyTo ( System.Array array , System.Int32 index )<BR> 125
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 126
</TD> 127
<TD> </TD> 128
</TR> 129
<TR> 130
<TD> </TD> 131
<TD>public virtual new System.Collections.IEnumerator GetEnumerator ( )<BR> 132
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 133
</TD> 134
<TD> </TD> 135
</TR> 136
<TR> 137
<TD> </TD> 138
<TD>public UploadFileCollection ( )<BR> 139
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 140
</TD> 141
<TD> </TD> 142
</TR> 143
<TR> 144
<TD> </TD> 145
<TD>public virtual new int Count [ get]<BR> 146
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 147
</TD> 148
<TD> </TD> 149
</TR> 150
<TR> 151
<TD> </TD> 152
<TD>public virtual new bool IsSynchronized [ get]<BR> 153
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 154
</TD> 155
<TD> </TD> 156
</TR> 157
<TR> 158
<TD> </TD> 159
<TD>public virtual new object SyncRoot [ get]<BR> 160
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 161
</TD> 162
<TD> </TD> 163
</TR> 164
<TR> 165
<TD> </TD> 166
<TD>public const Webb.WAVE.Controls.Upload.UploadFile this [ get]<BR> 167
Member of Webb.WAVE.Controls.Upload.UploadFileCollection<BR> 168
</TD> 169
<TD> </TD> 170
</TR> 171
<TR> 172
<TD>WebbTextTrace 173
<BR> 174
</TD> 175
<TD>public static void TraceMsg ( System.String str_traceMsg )<BR> 176
Member of Webb.WAVE.Controls.Upload.WebbTextTrace<BR> 177
</TD> 178
<TD>测试类,在WEB目录下生成一个TraceLog.ashx的文本文件,记录文本信息。</TD> 179
</TR> 180
<TR> 181
<TD> </TD> 182
<TD>public static void TraceMsg ( System.String str_traceMsg , System.String 183
str_fileName )<BR> 184
Member of Webb.WAVE.Controls.Upload.WebbTextTrace<BR> 185
</TD> 186
<TD> </TD> 187
</TR> 188
<TR> 189
<TD> </TD> 190
<TD>public WebbTextTrace ( System.String str_traceMsg )<BR> 191
Member of Webb.WAVE.Controls.Upload.WebbTextTrace<BR> 192
</TD> 193
<TD>静态函数,输出文件信息到TraceLog.ashx文件里,主要用于调试。</TD> 194
</TR> 195
<TR> 196
<TD colSpan="3"><FONT face="宋体">Web.conig配置</FONT></TD> 197
</TR> 198
<TR> 199
<TD colSpan="3"> 200
<P><FONT face="宋体"></FONT><configuration><BR> 201
<FONT face="宋体"><system.web><BR> 202
<!-- Settings of WebbUpload --><BR> 203
<httpRuntime useFullyQualifiedRedirectUrl="true" maxRequestLength="1024000" 204
executionTimeout="900" /><BR> 205
<httpModules><BR> 206
<add name="WebbHttpModule" type="Webb.WAVE.Controls.Upload.WebbHttpModule, 207
Webb.WAVE.Controls.Upload"/><BR> 208
</httpModules> 209
<BR> 210
<httpHandlers><BR> 211
<add verb="*" path="progress.ashx" type="Webb.WAVE.Controls.Upload.WebbUploadStatusHandler, 212
Webb.WAVE.Controls.Upload" /><BR> 213
</httpHandlers><BR> 214
<!-- ========================= --> 215
<BR> 216
</system.web><BR> 217
</FONT></configuration></P> 218
</TD> 219
</TR> 220
<TR> 221
<TD colSpan="3"> 222
<P><FONT face="宋体">最后说明:</FONT></P> 223
<P><FONT face="宋体">1、由于时间仓促,很多事情还没有完成,所以这个组件里面可能会存在一些BUG。<BR> 224
</FONT><FONT face="宋体">2、此组件只用于学习交流使用,不得用于任何商业用途。<BR> 225
3、关于源代码的分析(在本人的博客上),与本组件关系不大,本组件的主要核心算法与SunriseUpload.0.9.1的完全不一样。其它部份代码参了SunriseUpload.0.9.1的源码。(SunriseUpload.0.9.1的源码下载链接在我的博客上也有,请仔细阅读它的License)<BR> 226
4、目前不提供本组件的任何技术支持。<BR> 227
5、All for free.</FONT></P> 228
</TD> 229
</TR> 230
</TABLE> 231
</TD> 232
</TR> 233
</TABLE> 234
<uc1:Inc_Botton id="Inc_Botton1" runat="server"></uc1:Inc_Botton></TD> 235
</TR> 236
</TABLE> 237
</form> 238
</body> 239
</HTML> 240




