1

ノックアウトを使用して ASP.NET MVC アプリに取り組んでいます。その単一ページのアプリ。画像をアップロードする機能があります。何が最良の選択肢かわかりません。私が抱えている問題は、セッションがスティッキー セッションではないことです。つまり、リクエストが同じボックスに送られるという保証はありません。画像のアップロードを試みたオプションは次のとおりです

1.) データ uri - フォームを MVC コントローラーに投稿する画像アップロード用のカスタム ノックアウト バインディングを作成し、コントローラーが画像を base64 文字列に変換し、応答を JS のビューモデル プロパティに設定し、img タグにバインドします。 . これが最善の解決策のように見えましたが、IE8 をサポートする必要がありました。IE8 にはデータ URI の制限があるため、この作業は IE8 で機能します。

2.) アプリケーション サーバーの一時フォルダーにイメージを保存する - スティッキー セッションが利用できないため、これは確実に機能しません。

3.)セッションにイメージを保存します-セッションがメモリを占有するため、これはパフォーマンスが悪いようです

他のアプローチはありますか?

4

1 に答える 1

0

広告 1) このオプションはセッションの問題には優れていますが、転送時に非常に大きなオーバーヘッドが発生します (クライアントに送信して複数回返すすべての画像)。

広告 2) 一意のサブフォルダー (GUID 名など) の一時フォルダーに画像を保存し、この GUID のみをクライアントに送信できます。もちろん、このフォルダを時々クリーンアップするソリューションを提供する必要がありますが、これは非常に簡単です。

広告 3) セッションをメモリに保存すると、Web サーバーはメモリ不足の例外で非常に高速に「爆発」します。

したがって、私のオプションでは、次の理由から、最適なオプションは 2 です。

  1. 転送を節約できるため、サイトはクライアントにとってより高速に動作します
  2. 実装は非常に簡単です
  3. 管理が簡単です。
于 2013-06-17T07:56:44.317 に答える