1

それぞれクラスDonkeyを宣言する 2 つの WCF サービスを使用しています。これらのDonkeyクラスは、構造は同じですが、名前空間の問題により同じ型ではありません。

ここまでは usingを使用していますが (ここでfi を説明)、もう少し厳密な管理下に置きたいと考えています。

両方のDonkeyクラスを相互にマップするデータ コントラクト コンバーターを配置する方法 (および場所) に関する提案はありますか? ちょっとばかげた質問であることはわかっています。それが可能かどうかさえわからないという事実と関係があります。私の定式化を自由に修正してください。

すべての提案を歓迎します。私は独自のデータ定義レイヤーを作成し、独自のより優れた Donkeyオブジェクトを作成することを検討しています (あえて Futurama の Bender への参照を使用する場合は、酒と売春婦を使用します)。

4

2 に答える 2

1

明示的な名前空間がそのトリックを行います。

Donkeyクラスが実際に構造的に同じである場合は、2 つの名前空間が参照できる別のプロジェクトにクラスをマージできます。

これらの異なるDonkeyクラスがどのように考えられるかを制御できる場合は、それぞれがインターフェイスを共有できるようにすることができますIDonkeyが、それは多かれ少なかれマージに対する同じ構文上の解決策です。

于 2013-08-05T16:26:26.433 に答える
1

私があなたの状況を正しく理解していれば、あなたは同じ構造の異なるタイプの 2 つの構造を同じように使用したいと考えています。この場合、必要なのは暗黙のキャストを定義することだけです。したがって、Donkey の 1 つの定義で、他の Donkey との間のキャストを定義します。

2 つの Donkey を制御できない場合、またはクラスを切り離したい場合は、3 番目の Donkey クラスを追加する方が理にかなっています。このクラスでは、他の Donkey からのキャストを定義します。

状況の詳細に応じて、プロジェクト全体でできるだけ 1 つの Donkey のみを使用し、もう 1 つは必要な場合にのみ使用するようにしてください。

于 2013-08-05T16:57:02.367 に答える