私はKnockoutJSを初めて使用し、これまで掘り下げてきましたが、この情報がどこにも見つからなかった可能性があるので、コミュニティが助けてくれることを願っています。私のビューでは、ファイル入力に次のデータバインディングがあります。
<input type="file" data-bind="value: ImageToUpload"/>
<button data-bind="click: $root.saveImage">Upload</button>
これは「foreach」divのリストの一部であるため、変数「ImageToUpload」はそのリストのオブジェクトのプロパティに対応します。
私のViewModelでは、[アップロード]ボタンがsaveImage()を呼び出し、Webサービスを呼び出して、フォームデータを.aspxページに渡します。
self.saveImage = function (MyObject, event) {
$.post("Service.aspx", MyObject, function (returnedData) {
});
}
オブジェクトは正常にサービスに渡され、「ImageToUpload」変数を含むすべてのフォームデータに期待どおりにアクセスできます...しかし、ここで行き詰まります。
1)「ImageToUpload」は、アップロードしたファイルの名前を表す文字列であり、ByteArrayではありません。名前だけでなく、画像ファイルにアクセスするにはどうすればよいですか?
2)ByteArrayをストリームまたはその他の形式として応答ヘッダーに渡すためのより良い方法はありますか?
3)私のテクニックは完全にオフですか?これを行うためのより良い方法はありますか?私の目標は、アップロードされる画像の「スロット」の動的なリストを作成することです。
前もって感謝します!