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

121
Views
La población del modelo falla en HttpPost del cuerpo JSON

Me encuentro con un problema al publicar un JSON en un método de controlador .NET 6. El modelo no se está completando con los datos de la publicación.

Por ejemplo, un fragmento de JavaScript que envía los datos:

 let content = { asset: { id: item.dataset.itemId, title: item.dataset.itemTitle, contentType: item.dataset.contentType, contentAction: item.dataset.itemAction, modified: item.dataset.modifiedDate, created: item.dataset.createdDate }, user: { username: userElement.dataset.username }, interacted: moment().format('YYYY-MM-DD HH:mm:ss') } let response = fetch('/Analytics/Log', { method: 'POST', mode: 'same-origin', cache: 'no-cache', credentials: 'same-origin', headers: { 'Content-Type': 'application/json; charset=utf-8' }, redirect: 'follow', referrerPolicy: 'no-referrer', body: JSON.stringify(content) });

... esto envía al siguiente Controlador:

 [HttpPost, HttpOptions] [Route("/Analytics/Log")] public IActionResult Log([FromBody] Content body) { AnalyticsExtensions.LogActivity(body); }

desafortunadamente, body siempre aparece como nulo. Si cambio el tipo a dinámico, veo que un objeto se encuentra con datos, por lo que los datos se envían, pero no se cargan en el modelo.

... y aquí hay un fragmento del modelo:

 public class Content { [JsonProperty("asset")] public Asset Asset { get; set; } [JsonProperty("user")] public User User { get; set; } [JsonProperty("interacted")] public DateTime Interacted { get; set; } } public class Asset { [JsonProperty("id")] public Guid ID { get; set; } [JsonProperty("title")] public string Title { get; set; } [JsonProperty("contentType")] public string ContentType {get; set; } [JsonProperty("contentAction")] public string ContentAction { get; set; } [JsonProperty("modified")] public DateTime Modified { get; set; } [JsonProperty("created")] public DateTime Created { get; set; } } public class User { [JsonProperty("username")] public string Username { get; set; } }

Revisé errores ortográficos obvios y decoré el modelo con decoraciones JsonProperty, pero aún nada...

Me doy cuenta de que esto es probablemente algo estúpido, pero se agradecería un par de ojos extra.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En realidad, encontré que el problema estaba en esta línea:

interacted: moment().format('YYYY-MM-DD HH:mm:ss')

Esto no se considera un formato de fecha válido para JSON.

Cambiarlo a lo siguiente parece haber corregido el problema:

interacted: moment().format('YYYY-MM-DDTHH:mm:ss')

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!