Cuando POST
a la siguiente, es la conversión de los no-cero JobNumber
a 0 en lugar del valor que se envía.
[HttpPost("{testName}")]
public async Task<ActionResult<FirstPieceStamps>> PostFirstPieceStamps(string testName, [FromForm] FirstPieceStamps firstPieceStamps)
Aquí está el FirstPieceStamps
modelo
public class FirstPieceStamps
{
[Column(TypeName = "decimal(10,3)")]
public decimal JobNumber { get; set; }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int StampID { get; set; }
[Required]
public int TestID { get; set; }
[Required]
public int UserTypeID { get; set; }
[Required]
public bool Stamped { get; set; } = false;
#nullable enable
public string? FirstName { get; set; }
public string? LastName { get; set; }
#nullable disable
public FirstPieceJobs FirstPieceJobs { get; set; }
public FirstPieceTests FirstPieceTests { get; set; }
public FirstPieceUserTypes FirstPieceUserType { get; set; }
}
El request
que estoy tratando de hacer a partir Postman
de probarlo.
https://localhost:5001/api/FirstPieceStamps/Layflat?JobNumber=266019.001&Stamped=true&FirstName=John&LastName=Doe
El JobNumber
valor debe ser convertido a un decimal número, pero en lugar se está convirtiendo a solo 0.
Compruebe su uso de FromForm. Si realmente está enviando este post ya que tienes arriba, entonces los parametros están en la cadena de consulta y que deberían estar utilizando [FromQuery] en su lugar. He creado un proyecto API Core 3.1 fresca con su modelo y este método controlador y sólo funcionaba correctamente cuando cambié a FromForm FromQuery. Si quieres FromForm a trabajar, entonces usted necesita para eliminarlos de la cadena de consulta y utilice la opción "form-data" en el cartero. Con FromQuery, la númerodeimpresión completa con decimales vino a través.