こんにちは、
ここで非常に明白な何かが欠けていると確信しているので、ご容赦ください。
- 私はMVC 2 Betaを使用しており、いくつかのプロパティ、文字列、int などの通常のものを持つモデルがあります。
- また、イメージを含むバイト配列もあります。
- [HTTPGet] 属性で装飾された編集アクション メソッドがコントローラーにあります。
- このメソッドは、モデルをビューに渡します。ビューは、さまざまな文字列プロパティにバインドする通常のテキスト ボックスと、バイト配列/画像にバインドされる img 要素を持つフォームです。
これはすべて正常に機能し、画像を含むすべてのデータが表示されます。これはすべてかなり標準的なものです。
しかし、ユーザーが同じモデルをパラメーターとして受け入れる [HTTPPost] バージョンのアクション メソッドにフォームを送信すると、image プロパティは null になります。つまり、image プロパティはモデル バインディングの一部ではないようです。
イベントの通常の過程では、いくつかの検証を行い、モデルをビューに戻してレンダリングし、ユーザーが編集が成功したかどうかを確認できるようにします。ただし、モデルを「そのまま」戻すだけです。ビューはモデルに存在しないため、画像を再度レンダリングしません。
ビューに渡す前に(データベースまたはどこからでも)画像を再度取得してモデルに戻すことができることはわかっていますが、それは正しい戦略ですか、それとも何かを見逃していますか?
よろしく、サイモン