У меня есть это в моем представлении бритвы:
<div id="dropzone">
<form action="/Controller/Upload" method="post" enctype="multipart/form-data"
id="my-awesome-dropzone" class="dropzone needsclick dz-clickable dropzone-previews">
@Html.AntiForgeryToken()
<div ></div>
<div class="dz-message needsclick">
<button type="button" class="dz-button">Drop files here or click to upload.</button><br />
</div>
<span class="note needsclick">
</span>
</form>
и это в моем js:
Dropzone.options.myAwesomeDropzone = {
paramName: "file", // The name that will be used to transfer the file
maxFiles: mediaMax,
maxFilesize: maxSize,
uploadMultiple: true,
accept: function (file, done) {
if (file.name === "justinbieber.jpg") {
done("Naha, you don't.");
}
else { done(); }
},
init: function () {
this.on("sending", function (file, response, formData) {
formData["__RequestAntiForgeryToken"] = document.getElementsByName("__RequestVerificationToken")[1].value;
});
this.on("sendingmultiple", function (file, response, formData) {
formData["__RequestAntiForgeryToken"] = document.getElementsByName("__RequestVerificationToken")[1].value;
});
this.on("success", function (file, response) {
file.serverID = response.id;
});
this.on("error", function (file, response) {
var r = response;
console.log("Drop Err:");
console.log(r);
});
}};
в моем контроллере, я попробовал это :
[HttpPost]
[FormAttributes.DisableFormValueModelBinding]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Upload(ICollection<IFormFile> files)
и этот
[HttpPost]
[FormAttributes.DisableFormValueModelBinding]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Upload(IFormFile file)
и файл, и файлы возвращают 0 или ноль
работает только
[HttpPost]
[FormAttributes.DisableFormValueModelBinding]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Upload(ICollection<IFormFile> files)
{
if (ModelState.IsValid)
{
var more = HttpContext.Request.Form.Files;
... do stuff
} }
, где я в основном игнорирую входные параметры файлов
Может кто-нибудь сказать мне, что правильные параметры для загрузки?
для ссылки я посмотрел следующие ссылки:
MVC 6 HttpPostedFileBase?
https://dotnetthoughts.net/uploading-images-aspnet-core-and-dropzone/