私は、ASP.NET MVCアプリケーションで画像をアップロードするためにdropzone.jsを使用しようとしています。私はdropzoneをプログラマチックに設定し、それをクリックしてイメージを選択することができます。そして、ファイルダイアログで "開く"をクリックすると、正しいアクションがコントローラでヒットします。しかし、HttpPostedFileBaseは常にnullに戻りますので、画像で何もできません。しかし、クライアントサイドでは、サーバ側では取得できないのに、画像サムネイルが正しく表示されます。dropzone.jsと投稿されたASP.NET MVCファイルがnullですか?
これはHTMLです:
<div style="float:left;margin-right:2px;" id="mainImage">
<img src="/images/AddImage_button.png" class="dz-message" />
</div>
これは、ドキュメントの準備ができた後、私は呼んでjsのコードです:
var myDropzone = new Dropzone("div#mainImage", { url: "/Market/UploadImage" });
そして、これは、コントローラの内部アクションの呼び出しです:
public ContentResult UploadImage(HttpPostedFileBase imageFile)
{
if (imageFile == null || imageFile.ContentLength == 0)
{
//.....
}
}
アクションはヒットしましたが、imageFileはnullです。誰にもアイデアはありますか?ちなみに、 "dz-message"クラスはdropzone内のイメージプレースホルダに追加されました。その前にはクリック可能ではなかったからです。私はそれをどこかで読んだ。それはその問題の修正であり、それはうまくいった。
imageFileにnullが表示される理由は何ですか?
をデフォルトのパラメータ名は 'file'あり、そしてあなたは、 'imageFile'です。 'imageFile'を' file'に変更すれば、それはうまくいくでしょう – Catalin
それはそれでした。ありがとうございました! – user2623997
@RaraituL回答として投稿してください。私のような初心者のための良い助け –