一、文件上传下载
(一)上传
1、Upload.htm
2、Upload.ashx
(二)下载
1、Download.htm
2、Download.ashx
二、WebForm
Post前: Post后:
四、客户端与服务端注释:
<!—客户端注释-->
<%--服务端注释--%>
尽量用服务端注释
(一)上传
1、Upload.htm
<form method="post" enctype="multipart/form-data" action="Upload.ashx">
<input type="file" name="fileUpload" />
<input type="submit" value="upload" />
</form>
2、Upload.ashx
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
HttpPostedFile file = context.Request.Files[0];
file.SaveAs(context.Server.MapPath(Guid.NewGuid().ToString() + file.FileName));
context.Response.Write("Upload completed! ");
}
(二)下载
1、Download.htm
<body>
<a href="Download.ashx">下载图片</a>
</body>
2、Download.ashx
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
//因为url地址是ASCII码,所以必须对中文文件名进行encode,不然客户端接受看到的是乱码
string encodeFileName = HttpUtility.UrlEncode("b9a9bb0e-24fd-4dd2-a3e1-3dff2740f3d7捕获.PNG");
context.Response.AddHeader("Content-Disposition", string.Format("attachment;filename=\"{0}\"", encodeFileName));
//把文件内容作为流输出
context.Response.WriteFile("b9a9bb0e-24fd-4dd2-a3e1-3dff2740f3d7捕获.PNG");
}
二、WebForm
Post前: Post后:
![](https://img-my.csdn.net/uploads/201207/29/1343566723_4956.png)
![](https://img-my.csdn.net/uploads/201207/29/1343566726_1073.png)
<form method="post" action="MyIsPostBackDemo.aspx">
<input type="hidden" name="hidIsPostBack" value="1" />
<input type="submit" value="提交回去后False变True" />
</form>
public partial class IsPostBack_MyIsPostBackDemo : System.Web.UI.Page
{
public bool MyIsPostBack;
//在页面pr方法内部执行
protected void Page_Load(object sender, EventArgs e)
{
var isPostBackDemo = Request["hidIsPostBack"];
MyIsPostBack = !string.IsNullOrEmpty(isPostBackDemo);
this.Response.Write(MyIsPostBack.ToString());
}
}
四、客户端与服务端注释:
<!—客户端注释-->
<%--服务端注释--%>
尽量用服务端注释
五、页面生命周期(这个图可能看不清了,见谅,到网上搜吧)