public void GetsTypesFromAssembliesLoadedFromApplicationFolderIncludingUnityAssembliesIfOverridden() { var typesByAssembly = AllClasses.FromApplication(includeUnityAssemblies: true).GroupBy(t => t.GetTypeInfo().Assembly).ToDictionary(g => g.Key); Assert.IsTrue(typesByAssembly.ContainsKey(typeof(Microsoft.Practices.Unity.Tests.TestNetAssembly.PublicClass1).GetTypeInfo().Assembly)); Assert.IsTrue(typesByAssembly.ContainsKey(typeof(AssemblyScanningFixture).GetTypeInfo().Assembly)); Assert.IsTrue(typesByAssembly.ContainsKey(typeof(IUnityContainer).GetTypeInfo().Assembly)); }
protected override void ConfigureContainer() { base.ConfigureContainer(); this.Container.RegisterType <IGeoProvider, GeoProvider>(new ContainerControlledLifetimeManager()); this.Container.RegisterTypes( AllClasses.FromApplication() .Where(x => x.Namespace == "MVVMApp.Models") .Where(x => !x.GetTypeInfo().IsAbstract), WithMappings.FromAllInterfaces, WithName.Default, WithLifetime.ContainerControlled); }
public static void RegisterTypes(IUnityContainer container) { container.RegisterTypes(AllClasses.FromApplication(false, false), WithMappings.FromMatchingInterface, WithName.Default, WithLifetime.ContainerControlled ); // This method checks and for classes from Loaded Assemblies and creates a per request lifetime object for classes with the custom attribute //container.RegisterTypes(AllClasses.FromLoadedAssemblies(), // UnityHelpers.FromAllInterfacesWith_PerRequestLifetimeAttribute, // WithName.Default, // PerRequest // ) // .RegisterType<IUnitOfWorkExample, UnitOfWorkExampleTest>(new TransientLifetimeManager()); }
public void GettigTypesFromAssembliesLoadedFromApplicationFolderWithoutSkippingErrorsThrows() { AssertExtensions.AssertException <AggregateException>( () => AllClasses.FromApplication(skipOnError: false), ae => Assert.IsTrue(ae.InnerException is BadImageFormatException || ae.InnerException is System.IO.FileNotFoundException)); }
private static IEnumerable <Type> LoadTypesFromBaseType(Type baseType) { return(AllClasses.FromApplication().Where(t => t.GetTypeInfo().BaseType == baseType)); }