diff --git a/src/BootstrapBlazor/Components/Upload/ButtonUploadBase.cs b/src/BootstrapBlazor/Components/Upload/ButtonUploadBase.cs index 323adfed31c..eb37f1f6aeb 100644 --- a/src/BootstrapBlazor/Components/Upload/ButtonUploadBase.cs +++ b/src/BootstrapBlazor/Components/Upload/ButtonUploadBase.cs @@ -180,6 +180,7 @@ protected override async Task OnFileChange(InputFileChangeEventArgs args) OriginFileName = f.Name, Size = f.Size, File = f, + FileCount = args.FileCount, Uploaded = OnChange == null, UpdateCallback = Update }).ToList(); diff --git a/src/BootstrapBlazor/Components/Upload/UploadBase.cs b/src/BootstrapBlazor/Components/Upload/UploadBase.cs index ef87d2eac09..3e6da1db6e3 100644 --- a/src/BootstrapBlazor/Components/Upload/UploadBase.cs +++ b/src/BootstrapBlazor/Components/Upload/UploadBase.cs @@ -21,7 +21,7 @@ public abstract class UploadBase : ValidateBase, IUpload .Build(); /// - /// + /// 获得/设置 当前上传文件 /// protected UploadFile? CurrentFile { get; set; } diff --git a/src/BootstrapBlazor/Components/Upload/UploadFile.cs b/src/BootstrapBlazor/Components/Upload/UploadFile.cs index edd334c75d0..ee9c2763e08 100644 --- a/src/BootstrapBlazor/Components/Upload/UploadFile.cs +++ b/src/BootstrapBlazor/Components/Upload/UploadFile.cs @@ -47,6 +47,11 @@ public class UploadFile /// public IBrowserFile? File { get; set; } + /// + /// 获得/设置 上传文件数量 + /// + public int FileCount { get; init; } = 1; + /// /// 获得/设置 更新进度回调委托 /// diff --git a/test/UnitTest/Components/UploadTest.cs b/test/UnitTest/Components/UploadTest.cs index d96f2481ffe..cbe006eb510 100644 --- a/test/UnitTest/Components/UploadTest.cs +++ b/test/UnitTest/Components/UploadTest.cs @@ -606,6 +606,7 @@ await cut.InvokeAsync(async () => [Fact] public async Task ButtonUpload_IsDirectory_Ok() { + var fileCount = 0; var fileNames = new List(); List fileList = []; var cut = Context.RenderComponent>(pb => @@ -613,6 +614,7 @@ public async Task ButtonUpload_IsDirectory_Ok() pb.Add(a => a.IsDirectory, true); pb.Add(a => a.OnChange, file => { + fileCount = file.FileCount; fileNames.Add(file.OriginFileName!); return Task.CompletedTask; }); @@ -628,6 +630,7 @@ await cut.InvokeAsync(() => input.Instance.OnChange.InvokeAsync(new InputFileCha new(), new("UploadTestFile2") }))); + Assert.Equal(2, fileCount); Assert.Equal(2, fileNames.Count); Assert.Equal(2, fileList.Count); }