これは、ここで何度か尋ねられた質問のバリエーションです。一例: ASP.Net MVC3 で byte[] に含まれる画像を表示します。問題は、バイト配列から画像をレンダリングする方法です。
これらすべての質問には、上記のリンクの回答の 1 つに似たアクションがあります。
public FileContentResult Display(string id) {
byte[] byteArray = GetImageFromDB(id);
return new FileContentResult(byteArray, "image/jpeg");
}
次のようなイメージ タグを使用します。
<img src="@Url.Action("Display", new { id = Model.Id })" />
これが行われるのは、GET 要求を介してバイト配列を送信することができないためです。ID のみが送信され、Action メソッドでルックアップが可能になります。私はこの部分を理解しています、それは問題ではありません。私がやろうとしているのは、データベースに保存する前に作業を確認できる「プレビュー」ページを作成することです。タイトル、テキスト、画像のレイアウトを確認し、保存するか、戻ってさらに編集するかを決定できます。したがって、オブジェクトがまだデータベースに保存されていないため、「GetImageFromDB(id)」部分は機能しません。
これを達成する方法はありますか、それともバイト配列を一時的にデータベースに保存し、プレビュー ページでその方法でアクセスする必要がありますか?