Blazorでアップロードファイルをbyte配列に格納する方法について
解決したいこと
VisualStudio2022、BlazorServer、.NET6.0という環境で開発をしております。
下記のようなソースで、アップロードファイルをストリームに読み、ストリームからbyte配列に移し、ゆくゆくはこのバイト配列をSQLServerにバイナリデータとして書き込みたいと思っています。
が、
var l_Len = await l_str_file.ReadAsync(c_bt, 0, (int)file.Size);
のストリームからbyte配列に移すところ、大きいサイズのファイルの場合、byte配列にはファイルには96768byte前後しか移りません。
大きいサイズのファイルの場合でも、ストリームからbyte配列に全て移す方法、ご存知の方みえましたら、アドバイスして頂けますでしょうか。
宜しくお願いいたします。
private async Task LoadFiles(InputFileChangeEventArgs e)
{
foreach (var file in e.GetMultipleFiles(maxAllowedFiles))
{
try
{
AttachedFiles.Add(file.Name);
loadedFiles.Add(file);
byte[] c_bt = new byte[file.Size];
using (Stream l_str_file = file.OpenReadStream((int)file.Size))
{
var l_Len = await l_str_file.ReadAsync(c_bt, 0, (int)file.Size);
}
}
catch (Exception ex)
{
Msg_Up = " " + ex.Message;
}
}
}
0