在C#ASP.net中使用FileUpload Dialog控件时,如何在按下上传按钮之前确定用户上传的文件是否已关闭。这将阻止用户将未保存数据的文件推送到服务器进行处理。
答案 0 :(得分:2)
AFAIK,你做不到。该文件将:
答案 1 :(得分:2)
这在某种程度上是可行的,但需要付出很多努力并且可能无法控制最终用户环境。
一般步骤如下:
1:您可以使用像CBFS或其他开源库这样的虚拟文件系统(抱歉,除了CBFS之外我没有任何实际经验) - http://www.eldos.com/solutions/solutions-for-developers.php#commchannel
2:创建虚拟文件系统,使其映射到数据库存储或服务器端存储
3:将其映射为最终用户系统上的目录
4:只要最终用户在此共享中创建和修改文件,或者您只接受来自此共享的文件,那么您可以检查打开的文件句柄,如果是,则阻止上传
答案 2 :(得分:0)
这取决于用户编辑文件的方式。例如Word和从Windows Vista或7开始的记事本确实锁定了文件,因此没有其他人可以写入它们。在这种情况下,打开可写文件就很容易,并检查是否出现IOException。
static bool IsWriteProtected(string file)
{
try
{
using (File.OpenWrite(file)) ;
}
catch (UnauthorizedAccessException ex)
{
return true;
}
return false;
}
此致, Alois Kraus