首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用REST WCF WebService时出现错误请求

调用REST WCF WebService时出现错误请求
EN

Stack Overflow用户
提问于 2014-02-22 21:15:34
回答 2查看 799关注 0票数 0

我正在编写一个Android应用程序和一个WCF REST服务来调用它。当我试图调用某个方法时,我会收到一条“坏请求”消息。在之前的一次测试中,我成功地完成了这个调用,并成功地工作了,但是在对类进行了一些更改之后,我无法再进行一次。

这是服务中的类:

代码语言:javascript
复制
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; }
    }

方法接口和实现:

代码语言:javascript
复制
[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:{"venda":{"Cod":null,“TipoPagto”:0,"Vendedor":1,"Modo":"A prazo","Data":"2014-02-22","Total":0,“观测站”:“”,"TipoPagto":"Tipo Teste","Desconto":0,"ST":1,"GF":0,“DetalhesVenda”:{“ValorVenda”:null,“Desconto”:“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",“等级”:“1级”,“subgrade”:“路基1”}}

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-23 09:34:34

实际上,DateTime在您的模型类中是没有问题的,但是它是来自.NET的。

没有标准的JSON格式的日期.This是您面临这个问题的原因。有两种解决方案:

  1. 使用JSON.NET
  2. 或者,在模型类中将日期的类型设置为String,然后在收到json时将其解析为DateTime

请参阅以下链接:

正确的JSON日期格式响应中JSON中的不兼容日期格式.

票数 1
EN

Stack Overflow用户

发布于 2014-02-22 22:09:47

我发现问题是服务模型类中的DateTime新字段。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21960682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档