private Compiler GetCompiler() { if (_compiler == null) { _domain = AppDomain.CreateDomain("Compiler"); _domain.Load(Assembly.GetExecutingAssembly().GetName()); _compiler = _domain.CreateInstanceFromDeclaringAssemblyOfTypeAndUnwrap <Compiler>(); } return(_compiler); }
public void ValueIsUsableAcrossAppDomains() { AppDomain domain = null; try { domain = AppDomain.CreateDomain("TestCase Domain"); domain.Load(Assembly.GetExecutingAssembly().GetName()); var testClass = domain.CreateInstanceFromDeclaringAssemblyOfTypeAndUnwrap <UnsafeHelperTests>(); var number = UnsafeHelpers.GetRandomObjectOfType(typeof(double)); testClass.AssertNoThrow_SetDataViaReflection(number); } finally { if (domain != null) { AppDomain.Unload(domain); } } }