2010-12-31 8 views
2

私はEF 4.0を試しており、モデルの最初のアプローチを使用しています。私はデータベースに画像を格納したいと思いますし、エンティティ内のスカラーにとって最良の型が不明です。
私は現在、バイナリとして(イメージスカラータイプ)セットアップを持っています。私が読んできたことから、dbにイメージを格納する最良の方法はバイト[]です。だから私は、バイナリが行く方法だと仮定しています。より良い方法があれば私は切り替えるだろう。モデルの最初のアプローチでEF 4.0を使用してdbに画像を保存する方法。 MVC2

私は私のコントローラで

alt text

//file from client to store in the db 
HttpPostedFileBase file = Request.Files[inputTagName]; 
if (file.ContentLength > 0) 
{ 
    keyToAdd.Image = new byte[file.ContentLength]; 
    file.InputStream.Write(keyToAdd.Image, 0, file.ContentLength); 
} 

これは罰金構築しますが、私はそれを実行したとき、私はkeyToAdd.Imageにストリームを書き込み例外を取得します。 例外は次のようなものです。メソッドが存在しません。

アイデア? EF 4.0モデルの最初のアプローチを使用する場合、使用可能な型としてint16、int32、double、string、decimal、binary、byte、DateTime、Double、Single、およびSByteしかありません。 おかげ

答えて

1

の代わりに私が読むを使用している必要があります書き込みを使用。私はまだ画像ストリームを保存するより良い方法があれば興味があります。

file.InputStreamです。 書き込み(tmpBytes、0、file.ContentLength);

byte[] tmpBytes = new byte[file.ContentLength]; 
file.InputStream.Read(tmpBytes, 0, file.ContentLength); 
keyToAdd.Image = tmpBytes; 
関連する問題