0

サービス層で列挙型を使用しています。列挙型の値を設定すると、すべてうまくいきます。逆もまた同様です。エラーが発生するよりも、その値を設定するつもりはありません Error :

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

データベース操作中に使用される DataContract クラスで enum を使用しました。データモデルを使用してDBに接続するためにWCFサービスを使用しています。一部のメソッドでは enum を使用していますが、一部のメソッドでは使用していません。データ契約クラス:

[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 に答える