服务器如何删除临时文件,How To: 删除 C1Upload 临时文件

C1Upload控件可以用于上传文件到服务器,可以一次性上传多个文件。当文件上传时,用户可以取消上传。同时,可以通过“取消全部”按钮取消所有上传动作。或者通过,“停止”按钮取消特定文件的上传。当上传动作被取消时,文件将停止上传至服务器。

但是,文件可能存在于“Temp Folder”中,占用服务器空间。本篇文字将讲述如何删除“Temp Folder”中的临时文件。

客户端“取消”和“取消全部”按钮click事件会执行Ajax异步调用。在服务器端的方法中,我们可以删除临时文件。以下代码实为前台Ajax方法:

$(document).ready(function () {

var count = -1;

$("#C1Upload1").c1upload({

//cancel buuttons are shown when progress event is raised.

progress: function (e) {

//click event of Cancel Button

$(".wijmo-wijupload-cancel").click(function () {

count++;

//condition to restrict calling server side method only once.

if (count == 0) {

DeleteTempFiles();

}

});

}

});

//click event of CancelAll button

$(".wijmo-wijupload-cancelAll").click(function () {

DeleteTempFiles();

});

});

//Function to make an ajax() call to server side method.

function DeleteTempFiles() {

//place an ajax call to method "DeleteTempFiles"

//for deleting files in Temp folder

$.ajax({

type: "POST",

url: "Default.aspx/DeleteTempFiles",

data: "{}",

contentType: "application/json",

charset: "utf-8",

dataType: "json",

async: true,

cache: false,

success: function (msg) {

//message returned from server side method.

alert(msg.d);

},

error: function (x, e) {

alert("The call to the server side failed. " + x.responseText);

}

});

}

ajax 调用后台 WebMethod 方法删除 TempFolder 属性所对应的临时文件夹。代码如下:

protected void Page_Load(object sender, EventArgs e)

{ //save path of TempFolder in Session variable

Session["Path"] = C1Upload1.TempFolder;

}

[WebMethod]

public static string DeleteTempFiles()

{

try {

//Get path of TempFolder from Session object

string Path=HttpContext.Current.Session["Path"].ToString();

System.IO.DirectoryInfo TempFolder = new DirectoryInfo(HttpContext.Current.Server.MapPath(Path));

foreach (FileInfo file in TempFolder.GetFiles())

{

file.Open(FileMode.Open, FileAccess.ReadWrite);

file.Delete();

}

}

catch(Exception ex){

}

return "temp files deleted";

下载示例:Demo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值