c# - 没有 ID 为 1 的文件。文件列表可能已更改 Blazor
问题描述
当我尝试从列表上传文件时,出现此错误
“错误:没有 ID 为 1 的文件。文件列表可能已更改”
当我附加一个文件时它可以工作,但是当列表有多个文件时,我收到错误
我用来发送的电话是
调用函数
foreach (var item in fileList)
{
var Enow = item.GetMultipleFiles();
foreach (var _item in Enow)
{
output = await _IfileUpload.Upload(_item, NewGuid.ToString());
}
}
被调用函数
public async Task<string> Upload(IBrowserFile entry, string UploadGuid)
{
try
{
var path = Path.Combine(Directory.GetCurrentDirectory(), "Uploads/" + UploadGuid, entry.Name);
var _path = Path.Combine(Directory.GetCurrentDirectory(), "Uploads/" + UploadGuid);
if (!Directory.Exists(_path))
{
System.IO.Directory.CreateDirectory(_path);
}
Stream stream = entry.OpenReadStream();
FileStream fs = File.Create(path);
await stream.CopyToAsync(fs);
stream.Close();
fs.Close();
return path;
}
catch (Exception ex)
{
throw ex;
}
}
解决方案
BlazorInputFile 导致错误:“没有 ID 为 1 的文件”。在重新添加新文件时,不会保存属于先前文件的所有先前创建的对象。同时,索引以不再存在的未保存对象开始。在每个选择步骤保存文件会给出正确的索引。 Chrome inside 调试器指示 inputfile.js 中存在问题
推荐阅读
- javascript - need something like event.target.focus() in React
- android - Force Token Refresh in Xamarin Forms Android, Cloud Messaging
- python - 如何在 Tkinter 中隐藏/显示 GIF 图像
- sql - 循环 ER 表的 CREATE TABLE 语句
- javascript - 在选定的上下文菜单中访问节点详细信息 - D3
- c++ - 如何渲染 QQuickItem 孩子?
- python - 如果列表的值具有堆栈中的特定项目,如何打印和删除键
- javascript - Laravel Vue Axios 未定义
- c# - IronPython 2.7.8 编码 (ASCII) 与 Python 的 3.7 (UTF-8)
- image-processing - 将图像颜色空间从 RGB 转换为对手颜色