プロジェクトのいくつかのWCF契約を定義しています。
あるケースでは、ステータスフィールドを送信したい場合があります。これをテキストとして送信するだけです。
- これらのx文字列値のみが許可されることをWCFコントラクトで指定できますか?
- 列挙型を使用する方が良いでしょうか?
JavaWebサービスと相互運用します。
プロジェクトのいくつかのWCF契約を定義しています。
あるケースでは、ステータスフィールドを送信したい場合があります。これをテキストとして送信するだけです。
JavaWebサービスと相互運用します。
いいえ、できませんが、列挙型を使用して、文字列の制限されたリストと同等のスキーマに変換することができます。これは、許可された文字列値の範囲を簡単に確認できるため、WCF以外のクライアントにも役立ちます。
残念ながら、列挙型には、バージョン管理に関してWCFに不幸な手荷物が含まれています。具体的には、新しい列挙型を追加したり、既存のWCFクライアントを壊したりすることはできません。したがって、新しい列挙型を追加することは、重大な変更と見なされます。
これら2つのオプションを比較検討し、どちらが最適かを判断する必要があります。「純粋な」文字列を選択した場合は、値を自分で検証する必要があります。これはIParameterInspector
、制約したいデータコントラクトを使用する可能性のあるすべてのサービスにフックできるを作成することで、一般的に行うことができます。