.NET Core WebAPI post参数传递时后端的接收方式
自从前台用了Vue 的 axios 之后, 前后台交互默认变成了request pyload模式, 传过来的数据默认变成了. application/json
传递数据的格式见下图.
既然是进入了新的时代建议以后都用这种方式传参.
前台代码
axios.post('/api/FaHuoTongZhiDan/RemoveTZD',{"Id":Id} )
.then(res => {
res= res.data;
if (res.success)
{
this.$message.info(res.message);
this.fetch();
}else{
this.$message.error(res.message);
}
})
.catch(function (error) {
this.$message.error(error);
});
后台可以接收参数的方式如下.
1. 实体类 (推荐)
2. dynamic动态类型 (推荐)
3. JObject参数
4. 单值参数(字符串参数)
参数很多时建议采用实体类 接收参数,
参数很少时建议采样 dynamic 动态类接收参数.
// 接收 pyload过来的数据必须是 [FromBody] 才能接收到,
public AjaxRes RemoveTZD([FromBody] dynamic pars)
{
int Id = pars.Id;
发货通知单 发货通知单 = DB.发货通知单s.Where(a=>a.Id == Id).FirstOrDefault();
if (发货通知单 == null)
{
return new AjaxRes(false,"删除失败,找不到对应的商品记录.");
}
DB.发货通知单s.Remove(发货通知单);
DB.SaveChanges();
return new AjaxRes(true, "删除成功");
}