NetDataContractSerializer (または私が推測する任意のシリアライザー) を使用して、逆シリアル化中に通常はシリアル化できない型のオブジェクト作成を制御したいと思います。カスタム SerializationBinder を使用して、構築される型を制御し、カスタム ISurrogateSelector および ISerializationSurrogate を使用して、オブジェクトの状態を設定する方法を制御できます。
私ができないことは、実際に自分でオブジェクトを作成して、依存性注入などを使用できるようにすることです。問題を引き起こしているオブジェクトはオブジェクト グラフ内にあるため、シリアル化する前に編集できません。
私のコードが逆シリアル化されたオブジェクトを構築できるようにする方法はありますか?
(背景として、私は WF サンプルの XmlWorkflowInstanceStore に基づいてカスタム WF4 永続インスタンス ストアを作成しています。インターフェイスである変数を持つワークフローを作成したいのですが、具体的な型を直接構築することはできません。XmlWorkflowInstanceStore は唯一のたとえば、カスタムの永続性を見つけることができ、NetDataContractSerializer を使用してワークフローの状態をシリアル化します。)