c# - 尝试以 Windows 形式上传相同的文件
问题描述
我正在开发一个 Windows 窗体项目,我们应该使用产品图片。每次运行良好,我们使用 File.Exists() 检查文件是否已经存在,然后将图像复制到产品图像文件夹。
if (image.ShowDialog() == DialogResult.OK && !string.IsNullOrEmpty(image.FileName))
{
_view.FirmLogo.Image = new Bitmap(image.FileName);
_view.LogoURL = Path.Combine(System.IO.Path.GetFullPath(@"..\..\"), @"Resources\ProductImage\", Path.GetFileName(image.FileName));
//
if (File.Exists(_view.LogoURL))
{
File.Delete(_view.LogoURL);
}
//File.Move(@"c:\test\SomeFile.txt", @"c:\test\Test\SomeFile.txt");
File.Copy(image.FileName, _view.LogoURL);
}
当我们尝试更新同一个文件时,该错误 会引发错误:“因为它正在被另一个进程使用。例如,如果我们上传 pic1,一切都很好,我们尝试更改为 pic2 很好。但是如果我们尝试返回 pic1 触发错误,特别是如果它发生在同一个视野中。
解决方案
推荐阅读
- java - 在 Android SignalR 客户端上接收带有自定义对象的消息,数据未反序列化
- c# - 我想将 curl 转换为 ASP.NET MVC
- c# - ValidatePrincipal 失败导致重定向循环
- kubernetes - 在 GKE 的 cronjob 中使用 rollout restart 命令
- reactjs - 不等待从react redux中的useDispatch()获取结果
- basic-authentication - 基本身份验证是登录 Apache Tomcat 管理器的唯一方法吗?
- performance - 如何在Jmeter中生成带有前缀的随机数并将其存储到变量中
- flutter - Flutter 从另一个网站返回数据
- reactjs - Mediasoup Demo 后台自定义
- linux - 启动 VNC 时代码 = 已退出、状态 = 2 时出错