読者です 読者をやめる 読者になる 読者になる

亀岡的プログラマ日記

京都のベッドタウン、亀岡よりだらだらとお送りいたします。

WCFの後方互換性についてあれこれ。

.NET

WCF後方互換性についての以下の記事替わりと面白く、メモがてらまとめます。

サービス側だけを変化させて、クライアントのサービス参照を変更しない場合に、どんなことが起こるか、という話ですね。
コード例とかは簡単なので元記事を参照してください〜。

そいでわ。

パラメータを増やした場合

増やしたパラメータにはデフォルト初期値が入って、特に問題なく動きます。気が効いてますね。

パラメータを減らした場合

影響なく動きます。サーバーとしては情報が足りないわけではないのでOKのようですね。ふむ。

パラメータの型を変えた場合

予測できません。変化前の方と変化後の型に互換性があれば、問題なく動きますが、それ以外では例外が発生します。

返り値の型を変えた場合

予測できません。変化前と変化後の(ry
要は型の変換は割りと予測不能っぽいです。暗黙でコンバートできるか否かにかかっているっぽいですね。

メソッドを増やした場合

当然、問題なしです。ここはそう動いてもらわないとね。

コールするメソッドを減らした場合。

例外発生です。そりゃあね。

とまぁ、そんな感じ。
久々にプログラマっぽいのを書いたぞ!w