Asyncfileupload Blazor文件上传文件

Asyncfileupload Blazor文件上传文件,asyncfileupload,Asyncfileupload,我正在使用Blazor Wasm,我想上传一个pdf或jpeg文件到服务器 请不要共享服务器端代码,所有示例都解释了服务器端。但我需要一个客户的例子 因为,我想上传有日期的媒体文件。我将使用多部分/表单数据,但无法将我的文件分配给该文件 如何将文件/文件流分配给IFormFile 谢谢目前,我认为没有任何用于上传文件的本地Blazor wasm组件。它存在许多使用JSInterop的文件上传组件。我试过的其中一个是,和 然而,目前Mono中存在一些内存问题,即Blazor运行的底层开发平台。这意

我正在使用Blazor Wasm,我想上传一个pdf或jpeg文件到服务器

请不要共享服务器端代码,所有示例都解释了服务器端。但我需要一个客户的例子

因为,我想上传有日期的媒体文件。我将使用多部分/表单数据,但无法将我的文件分配给该文件

如何将文件/文件流分配给IFormFile


谢谢

目前,我认为没有任何用于上传文件的本地Blazor wasm组件。它存在许多使用JSInterop的文件上传组件。我试过的其中一个是,和

然而,目前Mono中存在一些内存问题,即Blazor运行的底层开发平台。这意味着Blazor最多只能管理5-6MB的文件。因此,我建议您使用严格使用javascript将文件发布到服务器的Blazor组件,例如Radzen fileupload

下面是一个使用MatBlazor的客户端文件上传示例(因为这是我手头的一个):


@代码
{
专用异步任务AddFile(IMatFileUploadEntry[]文件)
{
var file=files.FirstOrDefault();
如果(文件!=null)
{
var ms=新内存流();
wait file.WriteToStreamAsync(ms);
var content=新的MultipartFormDataContent
{
{新的ByteArrayContent(ms.GetBuffer()),
“\”上传文件\“,
文件名
}
};
等待client.PostAsync(“上传文件”,内容);
}
}
}
     <div class="p-2">
                <MatFileUpload OnChange="AddFile" class="form-container" Label="Upload File"></MatFileUpload>
                </div>

@code
 {

    private async Task AddFile(IMatFileUploadEntry[] files)
    {
        var file = files.FirstOrDefault();
                if (file != null)
                {
                    var ms = new MemoryStream();
                    await file.WriteToStreamAsync(ms);
                    var content = new MultipartFormDataContent 
                     {
                        { new ByteArrayContent(ms.GetBuffer()), 
                          "\"uploadFile\"", 
                          file.Name 
                        }
                    };
                    await client.PostAsync("uploadFile", content);
                }
    }
}