0

我在我的服务层中使用枚举。如果我设置枚举的值,反之亦然,我不会设置它的值,而不是它给我一个错误错误:

The underlying connection was closed: The connection was closed unexpectedly.

我在 DataContract 类中使用了枚举,它将在数据库操作时使用。我正在使用 WCF 服务通过数据模型与数据库连接。在某些方法中我使用的是枚举,但在某些方法中我不是。数据合同类:

[DataMember]
public Enums.SearchType SearchType { get; set; }

枚举声明:

 public enum SearchType
    {
      Search = 'S',

      Export = 'E',

      Undefined = 0
    }

那么在这种情况下我该怎么办?如果有人对此有任何想法,请帮助我...

提前致谢…………

4

1 回答 1

1

确保您的枚举类型具有默认值 (0)

public SearchType
{
   Undefined = 0,
   ...
}

枚举是 Int32(除非另有说明)。default(Int32) 为 0。default(Enums.SearchType) 也将为 0。如果枚举中未定义 0,则数据合约反序列化将失败。

于 2012-07-17T14:25:22.377 回答