サービスとクライアントの間でデータをやり取りするために、WCF サービス内にいくつかのデータ クラスを作成しました。そのため、これらの「オブジェクト」は [ServiceContract] と [DataMember] で装飾され、クライアントに公開されるため、オブジェクトをインスタンス化して入力し、サービスに送信できます。ここで、サービス内でポリモーフィズムを使用できることに気付きましたが、クライアントとサービスの間でそれを行うのはあまりうまくいきません。例えば
このサービスには、Ticket というクラスと、Ticket から派生した MOCTicket というクラスがあります。Ticket を引数として受け取るメソッドもあります。通常、そのメソッドに MOCTicket オブジェクトを送信できるはずです。これは Ticket から派生しているため、正常に機能し、サービス内でこれを実行できます。ただし、CLIENT 側で MOCTicket オブジェクトをインスタンス化し、Ticket を受け入れるサービス メソッドに送信しようとすると、エラーがスローされます。これはシリアル化の問題だと思います。
これらのデータクラスから取得できる動作の種類について、私はちょっと混乱しています。一部は取得できますが、他は取得できません。動作/メソッドまたはコンストラクターをシリアル化することはできませんが、遅延ロードされたプロパティをシリアル化することはできます (またはそのように思われます)。いずれにせよ、誰かが私が上で説明したことを達成するのを手伝ってくれるか、それが可能であれば. これらの「オブジェクト」に関する追加の説明もいただければ幸いです。答えを見つけようとグーグルで検索しましたが、これに答えるのに十分明確に書かれたものは見つかりませんでした。ありがとう。