Activator.CreateInstanceFrom..Unwrap ();тип кастинга не удался - PullRequest
0 голосов
/ 27 февраля 2019

Я пытался заставить это работать около 4 часов.try перехватывает исключение, и это `System.InvalidCastException: Невозможно привести прозрачный прокси к типу 'Test.SandboxDomain'.

Что я пробовал?Присоединяясь к AppDomain.CurrentDomain.AssemblyResolve, но он никогда не вызывался, я тоже пытался сделать appDomain.CreateInstanceFrom(), он не работал, также как appDomain.CreateInstanceFromAndUnwrap().

   public static AppDomain CreateAppDomain()
    {
       return AppDomain.CreateDomain("AppDomain");
    }


    public static SandboxDomain CreateSandbox()
     {
        var appDomain = CreateAppDomain();

        AppDomain.CurrentDomain.AssemblyResolve += SandboxDomain.CurrentDomain_AssemblyResolve;

        string AssemblyPath = Assembly.GetExecutingAssembly().Location;

        SandboxDomain sandbox = null;
        try
        {
             sandbox = (SandboxDomain)Activator.CreateInstanceFrom(appDomain, AssemblyPath,
                                                      typeof(SandboxDomain).FullName).Unwrap();
        }
        catch (Exception ex)
        {
                    Console.WriteLine(ex); 
        }

       return sandbox;
    }

Я тоже пробовал это

...