0

我正在使用 Blazor 服务器端并想上传一些文件。我不需要任何进度条左右,只想在EditForm提交文件时上传文件。到目前为止,我发现的流行解决方案(Synfusion Blazor File Upload、Steve Sandersons File Upload)在选择文件后上传文件,而不是在EditForm提交时上传。我不能只input type="file"在 HTML 中使用我的简单案例吗?我将如何使用 anEditForm以及如何在服务器端接收文件?

4

2 回答 2

0

史蒂夫桑德森文件上传作品,在

void HandleFileSelected(IFileListEntry[] files)
{
    // Do something with the files, e.g., read them
}

只需在提交表单时存储filesare 和 access 。IFileListEntry.Data无需立即在HandleFileSelected.

于 2020-09-03T21:05:20.123 回答
-1

史蒂夫桑德森文件上传很好,但不是必需的。我自己的代码在Change事件中处理文件上传,但我很确定您可以通过以下方式推迟上传:

<InputFile OnChange="HandleFileUpload" multiple></InputFile>

@code {
    InputFileChangeEventArgs FileArgs {get; set;}

 async Task HandleFileUpload(InputFileChangeEventArgs e)
{
    FileArgs = e;
}

然后,每当您准备好实际处理文件时,请继续使用以下内容处理参数(例如,在您的表单提交方法中):

foreach (var imageFile in FileArgs.GetMultipleFiles(maxAllowedFiles))
{
    // Do file stuff
}
于 2021-07-27T23:24:46.407 回答