Example #1
0
        internal void UnloadAppDomain()
        {
            if (Process.IsCurrentProcess)
            {
                SecurityPermission permission = new SecurityPermission(SecurityPermissionFlag.ControlAppDomain);
                permission.Assert();

                AppDomain.Unload(AppDomain);
                CodeAccessPermission.RevertAssert();
            }
            else
            {
                try
                {
                    _addInServerWorker.UnloadAppDomain();
                }
                catch (AppDomainUnloadedException) { }
                catch (RemotingException) { }
            }
        }