我正在尝试执行一些相当普遍的事情。我想要一个POST方法,它将接收表单数据以及一个(或多个)图像。
我认为签名应如下所示:
[HttpPost]
public void PostNewPost([FromBody] __PostModel PostValues, HttpPostedFileBase PostImage)
{
}
这样表单数据将包含在PostValues中,图像将被接收到PostImage中。
但是我得到了臭名昭着的
无法将多个参数('PostValues'和'PostImage')绑定到 请求的内容。
错误消息。
任何人都可以解释它是如何完成的吗?
答案 0 :(得分:0)
您需要覆盖HttpParameterBinding,因为Web API要求您使用模型绑定(将参数映射到 a 强类型对象)而不是几个单个参数。
要为HttpParameterBinding实现替代,请查看此帖子http://weblog.west-wind.com/posts/2012/Sep/11/Passing-multiple-simple-POST-Values-to-ASPNET-Web-API