コンパクト フレームワーク 3.5 で実行されているアプリケーションがあり、4.0 フレームワークを実行しているサービスにネットワーク経由で情報を送信する必要があります。具体的には、例外に関する情報を渡しています。クラス名とアセンブリ名を使用して、指定された例外の新しいインスタンスを作成できる必要があります。
Activator.CreateInstance() を使用してオブジェクトを作成しており、Type.GetType() を使用して 4.0 フレームワークの対応する型への参照を取得する予定でした。ただし、クラス名とアセンブリ名だけから Type 参照 (または型参照を取得するための完全修飾アセンブリ名) を取得する方法がわかりません (4.0 アセンブリの PublicKeyToken がわからないため)。
翻訳のためにサービスの一部の情報をチートして保存できることはわかっていますが、トークンやバージョン文字列をハードコーディングする必要のない、完全に動的なデータのルックアップを探しています。
ProtoBuf-Net を使用して、ネットワーク経由でデータをシリアライズ/デシリアライズしています。私は Type 値自体をシリアル化していましたが、これは一部の Exception タイプでは機能し、他のタイプでは機能しないことがわかったので、クラスとアセンブリの文字列名を渡すことに頼りました。フレームワークの種類/バージョン。具体的には、Type 値を渡すときに発生した最初の例外は System.Net.WebException でした。