Asp.net mvc 4 在一组数组或JSON中从Dropzone Js获取所有上载id
我有一份求职申请表供人们申请。该表格还允许人们上传简历和求职信 我使用Dropzone上传多个文件(简历和求职信)。我想得到一组已经上传到array或json中的ID。这样我就可以用它来创建与工作申请表的关系Asp.net mvc 4 在一组数组或JSON中从Dropzone Js获取所有上载id,asp.net-mvc-4,dropzone.js,Asp.net Mvc 4,Dropzone.js,我有一份求职申请表供人们申请。该表格还允许人们上传简历和求职信 我使用Dropzone上传多个文件(简历和求职信)。我想得到一组已经上传到array或json中的ID。这样我就可以用它来创建与工作申请表的关系 var idResult = ""; Dropzone.options.uploadDemo = { maxFilesize: 5, //accept file size 5MB paramName: "file", // The name that
var idResult = "";
Dropzone.options.uploadDemo = {
maxFilesize: 5, //accept file size 5MB
paramName: "file", // The name that will be used to transfer the file
acceptedFiles: ".pdf,.doc,.docx,.docm,.docb,.dotx,.dotm", //acccept file extension
addRemoveLinks: true,
init: function () {
this.on("success", function (data) {
console.log(data);
console.log(data.xhr.response);
$('#@Html.IdFor(x=>x.Applicant.UploadIds)').val(data.UploadIds);
});
这是我的控制器
[HttpPost]
[Route("Career/SaveUploadedFile")]
public ActionResult SaveUploadedFile()
{
try
{
string uploadId = string.Empty;
foreach (string fileName in Request.Files)
{
HttpPostedFileBase file = Request.Files[fileName];
//Save file content goes here
if (file != null && file.ContentLength > 0)
{
var originalDirectory = new DirectoryInfo(string.Format("{0}Upload\\Document", Server.MapPath(@"\")));
string pathString = System.IO.Path.Combine(originalDirectory.ToString(), "file");
var fileName1 = Path.GetFileName(file.FileName);
bool isExists = System.IO.Directory.Exists(pathString);
if (!isExists)
System.IO.Directory.CreateDirectory(pathString);
var path = string.Format("{0}\\{1}", pathString, file.FileName);
file.SaveAs(path);
var upload = TTCHRFacade.CreateUpload(new Upload()
{
FileName = file.FileName,
FileSize = file.ContentLength,
FileExtention = file.ContentType,
GUIDFileName = Guid.NewGuid().ToString(),
UploadDate = DateTime.Now
});
uploadId += upload.UploadId.ToString() + ",";
//return PartialView("ApplicantUploadTemplate", upload);
}
else
{
// Set as bad request (400)
Response.StatusCode = (int)System.Net.HttpStatusCode.BadRequest;
ModelState.AddModelError("error", "Need Files.");
return Json(ModelState.Values.FirstOrDefault().Errors.FirstOrDefault().ErrorMessage);
}
}
return Json(new { uploadId }, JsonRequestBehavior.AllowGet); //TODO
}
catch (Exception ex)
{
// Set as bad request (400)
Response.StatusCode = (int)System.Net.HttpStatusCode.BadRequest;
return Json(ModelState.Values.FirstOrDefault().Errors.FirstOrDefault().ErrorMessage);
}
}
注意:申请表和上传表在同一视图中
提前谢谢。您应该返回一组id,而不是一个id
var uploadIds = new List<string>();
foreach (string fileName in Request.Files)
{
// Your existing code goes here
var uploadId = upload.UploadId.ToString();
uploadIds.Add(uploadId);
}
//Now return the list of Ids
return Json(uploadIds, JsonRequestBehavior.AllowGet);
var uploadIds=new List();
foreach(Request.Files中的字符串文件名)
{
//您现有的代码在这里
var uploadId=upload.uploadId.ToString();
uploadId.Add(uploadId);
}
//现在返回ID列表
返回Json(uploadId,JsonRequestBehavior.AllowGet);
这将返回一个id数组
数据。在传递给ajax方法成功调用的数据中,uploadId
应该会为您提供新id。是的。但它不是一组id数组。您可以返回一个id数组。请参阅张贴的答案。它看起来正在工作。但是,我无法在查看页面中返回结果:3您希望在查看页面中的何处返回结果?结果如何?