6
我從小提琴手發送POST:Asp.net芯柱參數始終是空
POST http://localhost:55924/api/Product HTTP/1.1
User-Agent: Fiddler
Host: localhost:55924
Content-Type: application/json; charset=utf-8
Content-Length: 84
{"Ean″:」1122u88991″,」Name″:」Post test″,"Description":"Post test desc"}
但Post方法總是很空。
// POST api/Product
[HttpPost]
public IActionResult PostProduct([FromBody]Product product)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
_repo.Add(product);
return CreatedAtRoute("GetToode",product);
}
當我使用[FormBody]產品總是空的,當不使用它時,產品被賦值,但所有字段爲空。產品類別很簡單。
public class Product
{
public int ProductID { get; set; }
public string EAN { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public int? CategoryID { get; set; }
}
我嘗試添加NullValueHandling到ConfigureServices爲post,但沒有使用建議。
services.AddMvc()
.AddJsonOptions(jsonOptions =>
{
jsonOptions.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
});
嘗試發送所有屬性。包含'ProductID'和'CategoryID'。 –
這就像你映射字段不匹配,名稱應該與產品類相同,也嘗試刪除'[FromBody]' – Bharat