Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

181
Views
Cómo publicar un objeto javascript, una lista de objetos javascript y una lista de archivos en el controlador central de asp.net

Quiero pasar todos los datos al controlador después de hacer clic en el botón.

 var data = new FormData();

Aquí está mi objeto javascript

 var info = {}; info.CorporateName = $("input[name*='CorporateName']").val(); info.CorporatePhone1 = $("input[name*='CorporatePhone1']").val(); info.CorporatePhone2 = $("input[name*='CorporatePhone2']").val(); info.CorporateEmail = $("input[name*='CorporateEmail']").val();

Puedo acceder a estos datos desde el controlador con el siguiente código

 $.each(info, function (key, input) { data.append(key, input); });

Aquí está mi lista de archivos. Puedo acceder a estos archivos desde el controlador con el siguiente código

 var allfiles = $(".required-files"); for (var i = 0; i < allfiles.length; i++) { var files = allfiles[i].files; data.append('files', files[0]); }

Aquí está mi cookie de paquetes. No puedo acceder a la lista de paquetes desde el controlador

 var packageList = $.parseJSON($.cookie("packageList")); data.append('packageList',JSON.stringify(packageList));

Puedo publicar archivos, mi objeto de información pero no puedo publicar la lista de cookies

Aquí está mi controlador

 [HttpPost] public async Task<IActionResult> create(IEnumerable<IFormFile> files, List<PostServiceDto> packageList, ModelDto Model) { // files = not null, Model not null, but packageList = null var model = Request.Form; return View(); }

Mi modelo de paquete

 public class PostServiceDto { public string Type { get; set; } public string Name { get; set; } public string Price { get; set; } public string Id { get; set; } public string Count { get; set; } }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No pude tomar la lista con el parámetro, pero lo resolví obteniendo el cuerpo de solicitud del formulario de objeto json.

el valor devuelto por la solicitud = {\"Type\":\"3\",\"Name\":\"dfsfsdfs\",\"Price\":\"44,00\",\"Id\":\"2\",\"Count\":1},{\"Type\":\"3\",\"Name\":\"Yeni Paket\",\"Price\":\"49,90\",\"Id\":\"1\",\"Count\":1} Solución

 foreach (var item in Request.Form.Keys) { if(item == "packageList") { clearObject(Request.Form[item]); } } public List<PostServiceDto> clearObject(string value) { List<PostServiceDto> postServices = new List<PostServiceDto>(); List<PostServiceDto> myDeserializedObjList = (List<PostServiceDto>)Newtonsoft.Json.JsonConvert.DeserializeObject(value, typeof(List<PostServiceDto>)); return myDeserializedObjList; }

código fuente: [https://www.codeproject.com/Tips/79435/Deserialize-JSON-with-C]

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!