私はあなたが何をしようとしているのか完全には理解していません-あなたはサーバーからクライアントにPOCOを送りたいです:つまり、あなたはそのPOCOクラスを作成し、それを[DataContract]として装飾し、あなたのメンバーを装飾する必要があります[DataMember]でシリアル化したい。
クライアント側では、同じシリアル化されたワイヤ形式を持つクライアント側のプロキシクラスが生成されますが、WCFは最小公分母としてXMLスキーマを使用してシリアル化されるため、インターフェイスなどを送信することはできません。具体的なもののみです。インスタンスクラス。また、クライアントでは、サーバーと同じクラスを取得することはできません。同じ「ルックアンドフィール」(およびシリアル化形式)を持つクラスだけを取得します。
だから私はあなたがどのようにそしてどこに引っ掛かりたいのか本当にわかりません。
あなたがするかもしれない1つのことはに基づいてクライアント側のメッセージインスペクターを作成することです
public interface IClientMessageInspector
{
void AfterReceiveReply(ref Message reply, object correlationState);
object BeforeSendRequest(ref Message request, IClientChannel channel);
}
これにより、「AfterReceiveReply」イベントがキャッチされます。次に、シリアル化されたPOCOクラスを取得し、それをINotifyPropertyChangedハンドラーを実装する別のクラスに変換します。
WCFでメッセージインスペクターを作成して処理する方法については、いくつかのブログ投稿を参照してください。