私はこの問題を自分で解決しました。
アプリケーション プールをリサイクルして新しいアプリケーション プールを作成すると、すべての DLL が新しい Asp.Net テンプレート フォルダーにコピーされます。
すべての "bin" DLL を AppDomain に強制的にロードするときは、bin のアセンブリに型を登録します。Asp.net 一時フォルダー アセンブリにはありません。だからUnityはそれが差分タイプだと思った。
ここで、アセンブリを現在のドメインにロードする方法を変更します
string binPath = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "bin");
foreach (string dll in Directory.GetFiles(binPath, "*.dll", SearchOption.AllDirectories))
{
var assemblyFromCurrentDomain = Assembly.Load(Assembly.LoadFile(dll).FullName);
Debug.Print("Add Assembly : {0}, {1}", assemblyFromCurrentDomain.FullName, assemblyFromCurrentDomain.Location);
}
その後、問題は修正されました。