2010-12-07 1 views
1

私は、 'Vehicle'クラス(私はVs2010とC#を使っていました)から継承した 'Car'クラスを持っています。私は「車」を返す自明のWebサーバーメソッド(asmxを使用)を書きます。階層内のすべてのクラスの出力を生成するwsdl.exeを停止する方法はありますか?

ASP.netで生成されたページからWSDLを見ると、基本的な 'Vehicle'クラスと 'Car'クラスからWSDLが生成されます。外界が「Vehicle」クラスに関する知識を必要としていないことを考えると、WSDL.exeがコードを生成するのを止める方法はありますか?

おかげ

SAL

答えて

1

私はあなたが単に直列化の目的のために(Vehicleから継承しないこと)別のCarクラスを作成し、それらの間でマッピングする必要があり、この場合だと思います。 AutoMapperはいくつかのマッピングコードを削除するのに役立つかもしれませんが、どちらかといえば面倒ではありません。

+0

単純なケースではうまくいくはずですが、究極的には、あなたの腕の長さを持つ複雑なクラスでも同じことをしたいと思います...これまでのことは、提案 - 私は私が返すシンプルな "軽量"クラスを持っています。 – SAL

+1

@SALあなたが手動でWSDLを処理しない限り、それはあなたがasmxのために得られる最も近い(AFAIK) –