C# Post传值到后台经典场景
经典场景 传输内容包含 文件
注意事项:类型必须为form-data
[HttpPost] [Route("api/Test")] public JsonResult Test(string courieredNo, IFormFile tfile) { return Json(null); }
经典场景 传输内容包含 列表
注意事项:
1、前台传递的列表参数test[] 必须和后台接收的 参数 test 一致
2、前台参数需要通过test[].属性 数据格式赋值,如果非数组参数则不需要
[Logging] [HttpPost] [Route("api/Test")] public JsonResult Test(List<TestPost> test, IFormFile tfile) { return Json(test); } public class TestPost { public string courieredNo { get; set; } public IFormFile file { get; set; } }
经典场景 传输内容包含 文件、列表
注意事项:如果时对象的列表参数,需要 在前端也定义相关的 列表格式 如下面实例中的 test.p[].属性
传输设置
后台对象定义
[HttpPost] [Route("api/Test")] public JsonResult Test(TestPost test) { return Json(test); } public class TestPost { public string courieredNo { get; set; } public IFormFile file { get; set; } public List<P> p { get; set; } public class P { public int age { get; set; } } }
注意:对于POST 类型的请求,如果是postman 传值,出现415 错误,检查前台传输的类型和后台接受是否一致。 比如 form-data 对应的应该是[FromForm] ,webapi 如果接受参数没有特性,默认就是[FromBody],
或者通过 raw,已json的形式传输。
原创不易,转载请声明 bindot
https://www.cnblogs.com/bindot/