1

メソッドを使用して文字列 str にシリアル化された .net Type がありますAssemblyQualifiedName。後で使用してこのタイプにアクセスしたいType.GetType(str);

ここでの問題は、型のシリアル化と逆シリアル化の間の月にアセンブリ バージョンが変更されたことです。次に、バージョンを削除するカスタム アセンブリ リゾルバーを作成しました。

Type.GetType(str,
                assemblyName =>
                {
                    assemblyName.Version = null;
                    return System.Reflection.Assembly.Load(assemblyName);
                },
                null // type resolver : default
                );

これは機能しますが、これについていくつか質問があります。

  • 私の場合、公開トークンキーがバージョン間で同じに保たれるのは正常ですか? 何が彼らを変えるのですか?公開トークン キーの ID も削除できますか? (私がバージョンでやったように)
  • これを行う正しい方法ですか?理想的には、指定された型を指定されたアセンブリにロードしたいのですが、何か間違ったことをしているように感じます

ありがとう

4

0 に答える 0