public void AddUnity_Should_Chain_Existing_WebObjectActivator() { var existingSP = new Mock <IServiceProvider>(); HttpRuntime.WebObjectActivator = existingSP.Object; var unityContainer = UnityAdapter.AddUnity(); Assert.NotNull(HttpRuntime.WebObjectActivator); Assert.IsType <ContainerServiceProvider>(HttpRuntime.WebObjectActivator); Assert.Same(existingSP.Object, ((ContainerServiceProvider)HttpRuntime.WebObjectActivator).NextServiceProvider); Assert.NotNull(unityContainer); }
static void Main(string[] args) { IContainer ioc = null; while (ioc == null) { Console.WriteLine("Выберите IoC контейнер: 1-MyIoC, 2-Castle Windsor, 3-Unity, 4-Autofac"); int iocNumber; int.TryParse(Console.ReadLine(), out iocNumber); switch (iocNumber) { case 1: { ioc = new MyIOCContainer(); break; } case 2: { ioc = new WindsorAdapter(); break; } case 3: { ioc = new UnityAdapter(); break; } case 4: { ioc = new AutofacAdapter(); break; } } if (ioc == null) { Console.WriteLine("Неверный ввод!!!"); } } var logger = new NLogAdapter(); logger.Trace(String.Format("Выбран IoC : {0}", ioc.GetType())); ioc.Register<IList<Person>>(new List<Person>()); ioc.Register<IDataAccessor<Person>, ListDataAccessor<Person>>(); var dataAccessor = ioc.Resolve<IDataAccessor<Person>>(); dataAccessor.Insert(new Person(1, "Петров", "Петр", "Петрович", 20)); dataAccessor.Insert(new Person(2, "Иванов", "Иван", "Иванович", 25)); foreach (var person in dataAccessor.GetAll()) { logger.Info(String.Format("В коллекцию добавлен {0}", person.ToString())); Console.WriteLine(person.ToString()); } Console.ReadKey(); }
public static void Register(HttpConfiguration config) { // Web API configuration and services config.DependencyResolver = UnityAdapter.Resolve(config); // Web API routes config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); var jsonFormatter = config.Formatters .OfType <JsonMediaTypeFormatter>().First(); jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); }
public UnityAdapterTests() { container = new Mock<IUnityContainer>(); adapter = new UnityAdapter(container.Object); }
public void Should_finalize() { adapter = null; GC.Collect(); GC.WaitForPendingFinalizers(); }
public UnityAdapterTests() { container = new Mock <IUnityContainer>(); adapter = new UnityAdapter(container.Object); }