public object Resolve(Type type, object argumentsAsAnonymousType) { var resolvedObject = argumentsAsAnonymousType != null ? _iocResolver.Resolve(type, argumentsAsAnonymousType) : _iocResolver.Resolve(type); _resolvedObjects.Add(resolvedObject); return(resolvedObject); }
public TDbContext Resolve <TDbContext>(string connectionString) where TDbContext : DbContext { var dbContextType = GetConcreteType <TDbContext>(); return((TDbContext)_iocResolver.Resolve(dbContextType, new { nameOrConnectionString = connectionString })); }
/// <summary> /// 查询IController依赖对象 /// </summary> /// <param name="requestContext">Request context</param> /// <param name="controllerType">Controller type</param> /// <returns></returns> protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType) { if (controllerType == null) { return(base.GetControllerInstance(requestContext, controllerType)); } return(_iocManager.Resolve <IController>(controllerType)); }
public IUnitOfWork Begin(UnitOfWorkOptions options) { options.FillDefaultsForNonProvidedOptions(_defaultOptions); var uow = _iocResolver.Resolve <IUnitOfWork>(); uow.Begin(options); _unitOfWorkProvider.Current = uow; return(uow); }
static void Main(string[] args) { IIocConfig config = new IocConfig(); config.AddConfig <ITest, Test>(); IIocResolve resolve = IocManager.Resolve(config); ITest test = resolve.Resolve <ITest>(); test.Name = "hy"; test.Do(); }
/// <summary> /// Begin /// </summary> /// <returns></returns> public IUnitOfWorkCompleteHandle Begin() { var outerUow = _currentUnitOfWorkProvider.Current; if (outerUow != null) { return(new InnerUnitOfWorkCompleteHandle()); } var uow = _iocResolve.Resolve <IUnitOfWork>(); uow.Begin(); _currentUnitOfWorkProvider.Current = uow; return(uow); }
private static string GetNameOrConnectionStringOrNull(IIocResolve iocResolver) { if (iocResolver.IsRegistered <IEddoStartupConfiguration>()) { var defaultConnectionString = iocResolver.Resolve <IEddoStartupConfiguration>().DefaultNameOrConnectionString; if (!string.IsNullOrWhiteSpace(defaultConnectionString)) { return(defaultConnectionString); } } if (ConfigurationManager.ConnectionStrings.Count == 1) { return(ConfigurationManager.ConnectionStrings[0].Name); } if (ConfigurationManager.ConnectionStrings["Default"] != null) { return("Default"); } return(null); }
public EventBusInstaller(IIocResolve iocResolver) { _iocResolver = iocResolver; _eventBusConfiguration = iocResolver.Resolve <IEventBusConfiguration>(); }
/// <summary> /// Gets an <see cref="DisposableDependencyObjectWrapper{T}"/> object that wraps resolved object to be Disposable. /// </summary> /// <param name="iocResolver">IIocResolver object</param> /// <param name="type">Type of the object to resolve. This type must be convertible to <see cref="IDisposable"/>.</param> /// <param name="argumentsAsAnonymousType">Constructor arguments</param> /// <returns>The instance object wrapped by <see cref="DisposableDependencyObjectWrapper{T}"/></returns> public static IDisposableDependencyObjectWrapper ResolveAsDisposable(this IIocResolve iocResolver, Type type, object argumentsAsAnonymousType) { return(new DisposableDependencyObjectWrapper(iocResolver, iocResolver.Resolve(type, argumentsAsAnonymousType))); }
/// <summary> /// Gets an <see cref="DisposableDependencyObjectWrapper{T}"/> object that wraps resolved object to be Disposable. /// </summary> /// <typeparam name="T">Type of the object to get</typeparam> /// <param name="iocResolver">IIocResolver object</param> /// <param name="argumentsAsAnonymousType">Constructor arguments</param> /// <returns>The instance object wrapped by <see cref="DisposableDependencyObjectWrapper{T}"/></returns> public static IDisposableDependencyObjectWrapper <T> ResolveAsDisposable <T>(this IIocResolve iocResolver, object argumentsAsAnonymousType) { return(new DisposableDependencyObjectWrapper <T>(iocResolver, iocResolver.Resolve <T>(argumentsAsAnonymousType))); }
/// <summary> /// Gets an <see cref="DisposableDependencyObjectWrapper{T}"/> object that wraps resolved object to be Disposable. /// </summary> /// <param name="iocResolver">IIocResolver object</param> /// <param name="type">Type of the object to resolve. This type must be convertible to <see cref="IDisposable"/>.</param> /// <returns>The instance object wrapped by <see cref="DisposableDependencyObjectWrapper{T}"/></returns> public static IDisposableDependencyObjectWrapper ResolveAsDisposable(this IIocResolve iocResolver, Type type) { return(new DisposableDependencyObjectWrapper(iocResolver, iocResolver.Resolve(type))); }
/// <summary> /// Gets an <see cref="DisposableDependencyObjectWrapper{T}"/> object that wraps resolved object to be Disposable. /// </summary> /// <typeparam name="T">Type of the object to get</typeparam> /// <param name="iocResolver">IIocResolver object</param> /// <returns>The instance object wrapped by <see cref="DisposableDependencyObjectWrapper{T}"/></returns> public static IDisposableDependencyObjectWrapper <T> ResolveAsDisposable <T>(this IIocResolve iocResolver) { return(new DisposableDependencyObjectWrapper <T>(iocResolver, iocResolver.Resolve <T>())); }