using System; using System.Collections.Generic; using System.Text; namespace Serein.Library.Api { public interface ISereinIOC { /// /// 清空 /// /// ISereinIOC Reset(); /// /// 注册实例 /// ISereinIOC Register(Type type, params object[] parameters); ISereinIOC Register(params object[] parameters); ISereinIOC Register(params object[] parameters) where TImplementation : TService; /// /// 获取或创建并注入目标类型 /// T GetOrRegisterInstantiate(); /// /// 获取或创建并注入目标类型 /// object GetOrRegisterInstantiate(Type type); /// /// 创建目标类型的对象, 并注入依赖项 /// object Instantiate(Type type, params object[] parameters); ISereinIOC Build(); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); ISereinIOC Run(Action action); } }