使用Json正文的POST请求到MVC restful服务

时间:2014-01-15 12:04:45

标签: c# asp.net-mvc json wcf rest

尝试构建对wcf restful服务的有效请求。但整个小时都做不到,我不明白为什么它不起作用。其他AP是什么返回JSON正常工作,我测试了它们。现在需要修复请求API。 enter image description here

我把断点用于AddMeal方法的实现,但她没有触发。我认为我的请求或属性

有问题
    //Add Meal
    [OperationContract]
    [WebInvoke(UriTemplate = "AddMeal",
        RequestFormat = WebMessageFormat.Json,
        ResponseFormat = WebMessageFormat.Json, Method = "POST")]
    bool AddMeal(string meal);

1 个答案:

答案 0 :(得分:1)

您的WCF方法需要string,但是,模型绑定器会尝试将您的JSON绑定到不起作用的字符串。使用MVC时,您应该使用模型,创建一个代表您的JSON数据的模型,例如。

public class Meal
{
    public DateTime EatedTime { get; set; }
    public decimal Amount { get; set; }
    public int PatientID { get; set; }
    public int MealTypeID { get; set; }
    ...
}

然后更新您的签名以期待该模型

bool AddMeal(Meal meal)

您应该会发现数据已绑定到meal模型。