問題文:
ファイルのアップロード(つまり、添付ファイル)をサポートするaspxWebページがあります。添付ファイルのサイズは最大500MBです。HttpPostedFileを取得できますが、ストリームをByte []に読み込んでデータベースに保存すると、サイズの大きいファイルでは失敗します。NHibernateSession.Flush()では、メモリ不足例外がスローされます。
注:最大45MBのデータをアップロードできます。
このシナリオを回避するにはどうすればよいですか?
問題文:
ファイルのアップロード(つまり、添付ファイル)をサポートするaspxWebページがあります。添付ファイルのサイズは最大500MBです。HttpPostedFileを取得できますが、ストリームをByte []に読み込んでデータベースに保存すると、サイズの大きいファイルでは失敗します。NHibernateSession.Flush()では、メモリ不足例外がスローされます。
注:最大45MBのデータをアップロードできます。
このシナリオを回避するにはどうすればよいですか?
byte[]
これは、ファイル全体をメモリにロードする必要があることを意味するため、使用しないでください。これらの問題を軽減するためにBLOBを使用する方法を説明する素晴らしい記事があります。Streams
記事タイプに示されているカスタムBlobデータの実装は、ここにあります。
データベースがMSSQLの場合は、SqlFileStreamを使用する必要があります。これがその方法の良い例です。