SQLServerにファイルをアップロードしています
- UIレイヤーからファイルをストリーミングしています。
ビジネスレイヤーに関しては、ここに実装があります。
HttpWebRequest request = WebRequest.Create(postUrl)as HttpWebRequest;
ストリームrequestStream=request.GetRequestStream();
byte [] buffer = new byte [8 * 1024];
int len;
while((len = fileToUpload.File.Read(buffer、0、buffer.Length))> 0)
{{
requestStream.Write(buffer、0、len);
requestStream.Flush();
}
request.GetResponse()をHttpWebResponseとして返します。
入力ストリームを8KBにチャンクして、応答ストリームに送信しています。
私の質問は、ビジネスレイヤーのfileToUpload.Fileの長さが1 GBの場合、物理的にメモリに保存され、パフォーマンスに影響しますか?
または、ビジネスレイヤー関数を8000回呼び出すように、ファイルをUIからメモリに8KBでチャンクする必要がありますか?