如何处理文件上传的异常 我有一个页面的操作,提交后有三个地方提交数据一、数据库insert或update数据二、上传文件到系统文档目录三、上传图片到系统图片目录如果这3个操作其中一个出现异常,可能会留下垃圾数据怎么解决 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 数据库操作可以使用事务,如果不提交的话,数据是不会插进去的流程大概这样:开始事务数据库insert或update数据 如果出错,回滚,return上传文件到系统文档目录 如果出错,回滚,return上传图片到系统图片目录 如果出错,回滚,删除上一步上传的文件,return都成功了,提交数据 try{ BeginTrans(); //开始事务 InsertTable(); //插入表 try { UpLoadFile(); //上传文件 try { UpLoadImage(); //上传图片 } catch (Exception ex) { WriteLog(ex); throw new UploadImageException(ex.Message); } } catch (Exception ex) { if (ex is UploadImageException) //如果是上传图片异常,则删除文件 { DeleteFile(); } WriteLog(ex); throw ex; } ComitTrans(); //提交事务}catch (Exception ex){ WriteLog(ex); RollBackTrans(); //回滚事务} SQL Server 2008有个FileStream新特性可以保证数据库和文件系统的事务一致性,有条件的话不妨考虑下。 Word表格行高,不规则,行列都有合并的单元格 还是文件解密问题...急 急急急 如何正确使用HttpWebRequest和HttpWebResponse 请教个关于蜘蛛程序中多线程的问题 文件下载相关(C# Webform) 小弟不才,推荐些不错的C#视频吧 请高手指教, 有没有.net com中的CharFx的例子 200分求oledbConnection取表信息的问题 请问在Winform下如何限制用户只能在TextBox中输入数字和小数点 Quickmark 二维条码 API 关于frameset的问题!!!! 如何将值传递到跳转页面的相应的表单里
数据库insert或update数据
如果出错,回滚,return上传文件到系统文档目录
如果出错,回滚,return上传图片到系统图片目录
如果出错,回滚,删除上一步上传的文件,return都成功了,提交数据
try
{
BeginTrans(); //开始事务
InsertTable(); //插入表 try
{
UpLoadFile(); //上传文件
try
{
UpLoadImage(); //上传图片
}
catch (Exception ex)
{
WriteLog(ex);
throw new UploadImageException(ex.Message);
}
}
catch (Exception ex)
{
if (ex is UploadImageException) //如果是上传图片异常,则删除文件
{
DeleteFile();
}
WriteLog(ex);
throw ex;
}
ComitTrans(); //提交事务
}
catch (Exception ex)
{
WriteLog(ex);
RollBackTrans(); //回滚事务
}