私のasp.Net MVCアプリは、データベース内のレコードごとにユーザーが選択したPDFファイルを表すバイト配列を保存する必要があります。SQL 列は Varbinary(max) です。
私が考えているアプローチは、Telerik の (最も素晴らしい) KendoUI Upload コントロールを使用して、選択した PDF をコントローラー メソッドに非同期的にアップロードすることです。コントローラー メソッドは、System.IO 名前空間のクラスを使用して PDF をバイトに変換し、Json の結果でそのバイト配列を返します。この結果を待機するページにイベント ハンドラーがあり、そのバイト配列を非表示の入力に書き込みます。ユーザーが保存ボタンをクリックすると、残りのレコードと共に保存され、フォームがサーバーにポストされます。 .
私の直感では、ここには厄介な非効率性があると感じています...
PDF がサーバーに送信されます (おそらく、アップロード コントロールによって作成された何らかの形式のバイト配列で既に送信されています)。
アップロード メソッドの結果はバイト配列をページに返します。
ページは、データベースに保存されるバイト配列を含むフォーム ポストバックを送信します。
私の考えでは、ここで必要なネットワーク トラフィックはステップ 3 だけです。代わりにクライアントで PDF ドキュメントからバイト配列への変換を行う方法はありますか? これを行う賢い JavaScript/jQuery はどれでしょうか?