2013-12-07 3 views
6

dropzone.js를 사용하여 ASP.NET MVC 앱에서 이미지를 업로드하려고합니다. 나는 프로그램 방식으로 dropzone을 설정할 수 있습니다. 이미지를 선택하고 파일 대화 상자에서 "열기"를 클릭하면 컨트롤러에서 올바른 작업이 실행됩니다. 그러나 HttpPostedFileBase는 항상 null로 되돌아 가서 이미지로 아무 것도 할 수 없습니다. 그러나 클라이언트 쪽에서는 이미지 썸네일을 올바르게 보여 주지만 서버 측에서 가져올 수는 없습니다.dropzone.js 및 게시 된 ASP.NET MVC 파일이 null입니까?

var myDropzone = new Dropzone("div#mainImage", { url: "/Market/UploadImage" }); 

을 그리고 이것은 컨트롤러의 내부 동작의 호출입니다 :

<div style="float:left;margin-right:2px;" id="mainImage"> 
    <img src="/images/AddImage_button.png" class="dz-message" /> 
</div> 

이것은 문서가 준비 후 나는 호출 JS 코드는 다음과 같습니다

는 HTML입니다
public ContentResult UploadImage(HttpPostedFileBase imageFile) 
{ 

    if (imageFile == null || imageFile.ContentLength == 0) 
    { 
    //..... 
    } 
} 

조치가 발생했지만 imageFile이 null입니다. 누구든지 아이디어가 있습니까? 그런데 "dz-message"클래스는 dropzone 안에 이미지 자리 표시 자에 추가되었습니다. 그 전에는 클릭 할 수 없었기 때문입니다. 그 어딘가에 그 문제에 대한 해결책이었고 그것을 읽었습니다.

imageFile에 null이 표시되는 이유는 무엇입니까?

+4

기본 매개 변수 이름은'file', 그리고 당신은 'imageFile'. 'imageFile'을'file'로 변경하면 – Catalin

+0

이 작동합니다. 고맙습니다! – user2623997

+0

@RaraituL 답변으로 게시 .... 나 같은 초보자를위한 좋은 도움 –

답변

3

Dropzone이 사용하는 기본 매개 변수 이름은 file이고 사용자의 글꼴은 imageFile입니다. imageFilefile으로 변경하면 작동합니다.

0

놓칠 수있는 작은 변화가 있습니다.

는이 같은 설정에 enctype 속성의

사용 양식 요소가 있어야합니다, 시간의 저를 많이 일어난 : DROPZONE 사용

<form action="~/Home/SaveUploadedFile" method="post" enctype="multipart/form-data"/>