クライアントが WSDL を更新する必要なく、新しい (オプションの) パラメータを既存の操作に追加するのに最適な方法は何ですか? サービス コントラクトの新しいバージョンを記述するために名前空間を更新したくありません。これは古いクライアントとの下位互換性があるはずだからです。
オーバーロードとして、新しいパラメーターを使用して新しい操作を追加する必要がありますか? それとも、既存の操作にパラメーターを追加するだけですか?
これが私の操作です:
[OperationContract]
MyResponse GetData();
それは次のとおりです。
[OperationContract]
MyResponse GetData();
[OperationContract]
MyResponse GetData(string filter);
またはもっと簡単に、これを次のように変更します。
[OperationContract]
MyResponse GetData(string filter);
後者のオプションが最適と思われ、私の参考書によると、「クライアントへの影響はありません。新しいパラメーターはサービスでデフォルト値に初期化されます。WCF はそれをいわゆるデフォルト値に初期化していますか?」もしそうなら、デフォルト値は何ですか?