Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

133
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda