WCF 请求参数在到达服务时为 null



我正在开发一个 wcf Web 服务。它在单元测试期间工作正常。几天前,我将默认命名空间从"tempuri"更改为"tempuri",如以下链接中所述:http://blog.rebuildall.net/2010/11/10/wcf_service_namespaces 并将"Order"属性添加到数据成员中,即请求和响应类[DataMember(Order = 1)]。现在,在一个 OperationContract 中,即使值在客户端传递,某些参数在服务器端也被读取为 null。我还注意到,几个 OperationContract 的响应显示的是空标签,而这些标签中应该有价值。

在搜索时,我发现博客有类似的问题,但导致他们问题的是客户端和服务器端参数的名称不匹配。博客的链接是: http://blog.functionalfun.net/2009/09/if-your-wcf-service-is-unexpectedly.html

谁能指导我到这里。提前致谢

我不知道

是否有其他人设法像我一样得到这个错误,但这就是问题所在:

我定义了我的类,如下所示:

 public class CompositeType
    {
      private  bool boolValue;
      private  string stringValue = "";
        [DataMember]
        public bool BoolValue
        {
            get { return boolValue; }
            set { boolValue = value; }
        }
        [DataMember]
        public string StringValue
        {
            get { return stringValue; }
            set { stringValue = value; }
        }
    }

通过删除这些变量声明并使用自动属性语法,我能够解决这个问题。 即像:

 public class CompositeType
        {      
            [DataMember]
            public bool BoolValue
            {
                get;
                set;
            }
            [DataMember]
            public string StringValue
            {
                get;
                set;
            }
        }

最新更新