public SelectedFileReader(HttpClient http, SelectedFile file, FileBlobUrls fileBlobUrls) { _http = http ?? throw new ArgumentNullException(nameof(http)); File = file ?? throw new ArgumentNullException(nameof(file)); _fileBlobUrls = fileBlobUrls ?? throw new ArgumentNullException(nameof(fileBlobUrls)); }
public SelectedFileReader(HttpClient http, IJSRuntime jsRuntime, SelectedFile file, FileBlobUrls fileBlobUrls) { _http = http ?? throw new ArgumentNullException(nameof(http)); _jsRuntime = (IJSInProcessRuntime)jsRuntime ?? throw new ArgumentNullException(nameof(jsRuntime)); File = file ?? throw new ArgumentNullException(nameof(file)); _fileBlobUrls = fileBlobUrls ?? throw new ArgumentNullException(nameof(fileBlobUrls)); }
public async Task FilesSelectedAsync(SelectedFile[] files) { if (files?.Length > 0) { if (blobContainer is null) { blobContainer = new FileBlobContainer(JsRuntime, fileSelect); } else { await blobContainer.ResetAsync().ConfigureAwait(false); } selectedFiles = files; // clone var eventArgFiles = new SelectedFile[files.Length]; Array.Copy(files, eventArgFiles, files.Length); await FilesSelected.InvokeAsync(eventArgFiles).ConfigureAwait(false); await FilesChanged.InvokeAsync(new FileSelectChangeArgs(this, eventArgFiles)); } }