ASP.NETÎļþÏÂÔØº¯Êý
ÔÚÄãµÄPage_LoadÖÐÌí¼ÓÕâÑùµÄ´úÂë:
Page.Response.Clear();
bool success = ResponseFile(Page.Request, Page.Response, "Ä¿µÄÎļþÃû³Æ", @"Ô´Îļþ·¾¶", 1024000);
if (!success)
Response.Write("ÏÂÔØÎļþ³ö´í£¡");
Page.Response.End();
ÎļþÏÂÔØº¯Êý´úÂëΪ:
public static bool ResponseFile(HttpRequest _Request,HttpResponse _Response,string _fileName,string _fullPath, long _speed)
{
try
{
FileStream myFile = new FileStream(_fullPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
BinaryReader br = new BinaryReader(myFile);
try
{
_Response.AddHeader("Accept-Ranges", "bytes");
_Response.Buffer = false;
long fileLength = myFile.Length;
long startBytes = 0;
double pack = 10240; //10K bytes
//int sleep 
Ïà¹ØÎĵµ£º
http://www.cnblogs.com/JimmyZhang/archive/2007/11/25/971878.html
ÒýÑÔ
Http ÇëÇó´¦ÀíÁ÷³Ì ºÍ Http Handler ½éÉÜ ÕâÁ½ÆªÎÄÕÂÀÎÒÃÇÊ×ÏÈÁ˽âÁËHttpÇëÇóÔÚ·þÎñÆ÷¶ËµÄ´¦ÀíÁ÷³Ì£¬ËæºóÎÒÃÇÖªµÀHttpÇëÇó×îÖÕ»áÓÉʵÏÖÁËIHttpHandler½Ó¿ÚµÄÀà½øÐд¦Àí(Ó¦¸Ã¼ÇµÃPageÀàʵÏÖÁËIHttpHandler)¡£´Ó Http ÇëÇó´¦ÀíÁ÷³Ì Ò»ÎĵÄ×îºóµÄ ......
Ö±½Ó»ñµÃÒ³Ãæ²ÎÊý£º
if(!IsPostBack) { //ÅжÏÊÇ·ñÊǵÚÒ»´Î¼ÓÔØ´°Ìå
}
if(Page.PreviousPage!=null){ // ÅжÏÉÏÒ»Ò³ÃæµÄ°´Å¥ÊÇ· ......
ÔÚ ASP.NET ÍøÒ³Öв»¾¹ý»Ø·¢¶øÊµÏÖ¿Í»§¶Ë»Øµ÷
ÔÚ ASP.NET ÍøÒ³µÄĬÈÏÄ£ÐÍÖУ¬Óû§»áÓëÒ³½»»¥£¬µ¥»÷°´Å¥»òÖ´Ðе¼Ö»ط¢µÄһЩÆäËû²Ù×÷¡£´Ëʱ½«ÖØÐ´´½¨Ò³¼°Æä¿Ø¼þ£¬²¢ÔÚ·þÎñÆ÷ÉÏÔËÐÐÒ³´úÂ룬ÇÒа汾µÄÒ³±»³ÊÏÖµ½ä¯ÀÀÆ÷¡£µ«ÊÇ£¬ÔÚÓÐЩÇé¿öÏ£¬ÐèÒª´Ó¿Í»§¶ËÔËÐзþÎñÆ÷´úÂ룬¶ø²»Ö´Ðлط¢¡£Èç¹ûÒ³ÖеĿͻ§¶Ë½Å±¾Î¬»¤Ò»Ð©×´Ì¬ ......
//default.aspx.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Runtime.InteropService ......