我正在编写一个Android应用程序和一个WCF REST服务来调用它。当我尝试打电话给某种方法时,我收到“错误的请求”消息。在之前的测试中,我设法做了这个调用,并且它的工作,但是在一些课程上的变化之后,我再也不能做了。调用REST WCF WebService时的错误请求
这是服务类:
public class Venda
{
public int Cod { get; set; }
public string Pedido { get; set; }
public int Cliente { get; set; }
public int Vendedor { get; set; }
public string Modo { get; set; }
public DateTime Data { get; set; }
public double Total { get; set; }
public string Observacoes { get; set; }
public string TipoPagto { get; set; }
public double Desconto { get; set; }
public int ST { get; set; }
public int GF { get; set; }
public List<DetalheVenda> DetalhesVenda { get; set; }
public Venda()
{
DetalhesVenda = new List<DetalheVenda>();
}
}
public class DetalheVenda
{
public int Cod { get; set; }
public string Pedido { get; set; }
public string Produto { get; set; }
public double Quantidade { get; set; }
public double ValorVenda { get; set; }
public double ValorCompra { get; set; }
public double ValorVendaMinimo { get; set; }
public int ST { get; set; }
public double Desconto { get; set; }
public int Vendedor { get; set; }
public int Cliente { get; set; }
public string Modo { get; set; }
public DateTime Data { get; set; }
public string Grade { get; set; }
public string SubGrade { get; set; }
}
方法接口和实现:
[OperationContract]
[WebInvoke(
Method = "POST",
UriTemplate = "AdicionaVenda",
BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json)]
void AdicionaVenda(Venda venda);
//a breakingpoint nor enter here
public void AdicionaVenda(Venda venda)
{
repositorio.AdicionaVenda(venda);
}
这是我送的身体要求的JSON: { “文达”: {“Cod”:null,“Pedido”:“1.1.56”,“Cliente”:0,“Vendedor”:1,“Modo”:“Prazo”,“Data”:“2014-02-22”, “Total”:0,“Observacoes”:“”“TipoPagto”:“Tipo Teste”,“Desconto”:0,“ST”:1,“GF”:0, “DetalhesVenda”:[{“ :空, “Pedido”: “1.1.56”, “Produto”: “13”, “Quantidade”:0 “ValorVenda”:9 “ValorCompra”:5 “ValorVendaMinimo”:0, “ST”:0, “Desconto”:0 “Vendedor”:0, “Cliente”:0,“Modo”:“A prazo”,“Data”:“2014-02-22”,“Grade”:“grade 1”,“SubGrade”:“路基1”}]}}
是的,我做了第二个选项。 –
我也是遵循相同的方法:) –