Impossible de diffuser un proxy transparent pour taper depuis AppDomain

Je suis en train de créer un objet dans un domaine d'application:

var type = typeof (CompiledTemplate);
var obj = (CompiledTemplate) domain.CreateInstanceAndUnwrap (
    type.Assembly.FullName, type.FullName);

Cependant, je reçois toujours le message d'erreur suivant:

Impossible de cast transparent proxy de type " Mono.TextTemplating.CompiledTemplate'.

Je suis en cours d'exécution sur .NET 4.0, pas Mono, en dépit de ce que l'espace de nom pourrait le suggérer 🙂

Autant que je sache, cette erreur se produit lorsque .NET pense que le Type de & Assemblée ne correspondent pas exactement dans les deux domaines. Toutefois, lorsque le débogage, le Nom et l'Emplacement sont identiques. Seule l'Assemblée.Le code de la propriété qui varie dans l'AppDomain enfant son extension est en majuscule de "DLL" pour une raison quelconque.

J'ai essayé d'ajouter un AssemblyResolve gestionnaire pour le domaine d'application, qui utilise de l'Assemblée.LoadFrom pour charger le fichier explicitement, mais le Code de l'extension est toujours en majuscule. Depuis la première assemblée a également été chargé avec de l'Assemblée.LoadFrom (via Mono.Addins), la différence entre la base de valeurs semble très étrange.

Toutes les suggestions de correction ou de travail autour de ce problème?

source d'informationauteur Mikayla Hutchinson