0
私は私の名前空間のBaseModel
とChildModel
を持っています。私はDomainServiceで両方を返す操作をしていて、「KnownTypeAttributeを基本クラスに適用する」という例外が発生していました。私は適用した、それは働いた。ドメインサービスから派生型を返さないときに、なぜ 'KnownTypeAttribute'が必要なのですか?
しかし、私は、その後も私はBaseModelにこの属性を適用するためにバインドされています、私のDomainServiceにDerivedTypeを返す任意の操作を公開していない場合は、そうでない場合、私は例外を取得。
この出来事である理由誰が説明することはできますか?
public class MyService: DomainServiceBase
{
public BaseModel Get()
{
return new BaseModel();
}
}
しかし、私は、露光または「のDomainService」クラスのメソッドのいずれかから「ChildType」オブジェクトを返すわけではありません。したがって、WCFがオブジェクトの "ChildType"をシリアライズするというメッセージを受け取る方法はありません。 – teenup
サービスを開始するとき、または何らかのメッセージを受け取ったときに、いつ例外が発生しますか?どんなメッセージでも起こりますか?私の推測では、クライアントが子タイプを送信することです。それは基底型から継承しているので、それは正当です –
いいえ、私はBaseTypeだけを返しています。派生型ではありません。私はそれらの両方が返されていたが、ちょうどテストのために、私はDerivedTypeを返すメソッドを除去し、まだ私はそれを正しく動作させるには、BaseTypeの属性を維持しなければなりませんでした。 – teenup