删除上传文件
2014-10-24 16:01:26 访问(1770) 赞(0) 踩(0)
网站开发中,文件管理(附件管理)比较繁琐,几个思路:
1、上传了文件,删除的是否一并把文件删除;
2、有些文件不需要本地二次上传,只需要外部地址引用即可;
延伸的问题:
(1)、如果删除记录同时不删除文件,文件会常驻服务器,服务器空间会越来越垃圾占用;
(2)、如果是外部引用地址的文件,是否要加多一个字段标识文件来源?
通常,我的做法是用前缀符,~/表示外部引用的,-/表示本地上传的。上传的文件相对网站目录地址前面加多这个前缀符并存入数据库。
则删除文件的代码为:
/// <summary>
///
/// </summary>
/// <param name="fileName"></param>
public static void DeleteWebUploadFile(string fileName)
{
if (fileName == null || fileName.Length == 0)
{
throw new Exception
(
"fileName == null || fileName.Length == 0"
);
}
if (!fileName.StartsWith("-/"))
return;
if (HttpContext.Current == null)
{
throw new Exception
(
"HttpContext.Current == null"
);
}
fileName = fileName.Substring(2);
if (fileName.Length == 0)
{
return;
}
string fileFullName =
HttpContext.Current.Request.PhysicalApplicationPath + fileName;
if (!File.Exists(fileFullName))
return;
File.Delete(fileFullName);
}
标签:
删除上传文件 


文件删除 


上一条:
下一条:
相关评论
发表评论