C# 在Blazor客户端WebAssembly和.net 5上使用InputFile
我做这个教程是为了创建一个机器学习应用程序()。我想将我的应用程序从Blazor服务器转换为Blazor客户端 但是我对.NET5上的输入文件有一个问题C# 在Blazor客户端WebAssembly和.net 5上使用InputFile,c#,blazor,.net-5,blazor-webassembly,blazor-client-side,C#,Blazor,.net 5,Blazor Webassembly,Blazor Client Side,我做这个教程是为了创建一个机器学习应用程序()。我想将我的应用程序从Blazor服务器转换为Blazor客户端 但是我对.NET5上的输入文件有一个问题 @page "/identify" @using System.Collections.Generic @using BlazorClient.Data @using BlazorInputFile <div class="container"> <h1>Identify
@page "/identify"
@using System.Collections.Generic
@using BlazorClient.Data
@using BlazorInputFile
<div class="container">
<h1>Identify image</h1>
<p>
This component allows sending an image to run the image recognition model.
Select an image to start the upload and recognition process.
</p>
<form>
<InputFile multiple OnChange="OnImageFileSelected" accept="image/*"/>
</form>
<div class="row my-4">
@foreach (var image in selectedImages)
{
<div class="col-4">
<p>@image.Name</p>
</div>
}
</div>
</div>
@code {
List<IFileListEntry> selectedImages = new List<IFileListEntry>();
void OnImageFileSelected(IFileListEntry[] files)
{
selectedImages.AddRange(files);
}
}
@page”/identify
@使用System.Collections.Generic
@使用BlazorClient.Data
@使用BlazorInputFile
识别图像
此组件允许发送图像以运行图像识别模型。
选择图像以启动上载和识别过程。
@foreach(选定图像中的var图像)
{
@图像。名称
}
@代码{
List selectedImages=新建列表();
void OnImageFileSelected(IFileListEntry[]文件)
{
选择edimages.AddRange(文件);
}
}
我使用此解决方案解决问题:
IReadOnlyList<IBrowserFile> selectedImages;
void OnImageFileSelected(InputFileChangeEventArgs eventArgs)
{
const int MaxAllowedFiles = 5;
selectedImages = eventArgs.GetMultipleFiles(MaxAllowedFiles);
}
IReadOnlyList selectedImages;
void OnImageFileSelected(InputFileChangeEventArgs eventArgs)
{
const int MaxAllowedFiles=5;
选择eImage=eventArgs.GetMultipleFiles(MaxAllowedFiles);
}
第一个错误表示您有一个名为BlazorInputFile.InputFile
的类,它与Microsoft.AspNetCore.Components.Forms.InputFile
冲突,因此您需要决定要在
行中使用哪个类。您还可以将自定义组件重命名为其他类以消除冲突。。