代码之家  ›  专栏  ›  技术社区  ›  Michael Edwards

未返回WCF对象图

  •  0
  • Michael Edwards  · 技术社区  · 14 年前

    我已经创建了一个WCF服务,它返回一个复杂的对象图,图中有很多对象,但并不过分(少于30个)。

    在测试本地系统时,服务运行良好,这是IIS7。然后,我们将该服务上载到我们的测试服务器IIS 6,该服务不再工作。

    检查服务器日志我们可以看到我们的服务方法正确执行并返回正确的对象图。但是,WCF不会将此结果传输回调用客户端。

    有人知道这是什么原因吗?

    似乎主对象上的一个枚举导致整个响应不返回。此枚举的对象具有3个字符串属性和1个guid。其他枚举返回正常,我不知道为什么这个。这就是定义:

    [DataContract]
    public class OtherFields    {
    
        [DataMember]
        public string Caption
        {
            get;
            set;
        }
    
        [DataMember]        
        public string Help { get; set; }
        [DataMember]
        public Guid Id { get; set; }
        [DataMember]
        public string AdditionalInfo { get; set; }
    }
    
    1 回复  |  直到 14 年前
        1
  •  1
  •   Michael Edwards    14 年前

    问题是父对象使用了一个泛型枚举来保存OtherFields对象的列表。将其更改为数组解决了该问题