/*生命周期枚举 InstanceScope: InstancePerDependency:When you resolve a component that is instance per dependency, you get a new one each time. SingleInstance:When you resolve a single instance component, you always get the same instance no matter where you request it. InstancePerLifetimeScope:When you resolve the instance per lifetime scope component, you get a single instance per nested scope (e.g., per unit of work). InstancePerMatchingLifetimeScope:When you create a nested lifetime scope, you have the ability to “tag” or “name” the scope. A component with per-matching-lifetime scope will have at most a single instance per nested lifetime scope that matches a given name. This allows you to create a sort of “scoped singleton” where other nested lifetime scopes can share an instance of a component without declaring a global shared instance. InstancePerRequest:Instance per request builds on top of instance per matching lifetime scope by providing a well-known lifetime scope tag, a registration convenience method, and integration for common application types. Behind the scenes, though, it’s still just instance per matching lifetime scope. InstancePerOwned:The Owned implicit relationship type creates new nested lifetime scopes. It is possible to scope dependencies to the owned instance using the instance-per-owned registrations. ThreadScope:Each thread executing through ThreadStart() will then get its own instance of MyThreadScopedComponent - which is essentially a “singleton” in the lifetime scope. Because scoped instances are never provided to outer scopes, it is easier to keep thread components separated. */ { "components": [ { "type": "Tiger.Business.TestService,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ITest,Tiger.IBusiness" } ], "autoActivate": true, "instanceScope": "SingleInstance", //生命周期 "injectProperties": true }, { "type": "Tiger.Business.MailServiceApi,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.IMailServiceApi,Tiger.IBusiness" } ], "autoActivate": true, "instanceScope": "SingleInstance", //生命周期 "injectProperties": true }, { "type": "Tiger.Business.WMS.WMS_ITEM_Biz+_Biz_WmsItem,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IBiz_WmsItem,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.Biz,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.IBiz,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.Biz,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ILogin,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.Biz,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ISystem,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.Biz+Language,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ILanguage,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.BS,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IBS,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.iSRM,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IiSRM,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.KanBan,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IKanBan,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.AGV,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IAGV,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, //{ // "type": "Tiger.Business.WMS.RePrintBarcode,Tiger.Business.WMS", // "services": [ { "type": "Tiger.IBusiness.IRePrintBarcode,Tiger.IBusiness.WMS" } ], // "autoActivate": true, // "injectProperties": true, // "instanceScope": "SingleInstance" //生命周期 //}, { "type": "Tiger.Business.BizContext,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.IBizContext,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.WMSContext,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IWMSContext,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.iWMS,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IiWMS,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.WMS.ErpT100,Tiger.Business.WMS", "services": [ { "type": "Tiger.IBusiness.IErpT100,Tiger.IBusiness.WMS" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.MonitorBus,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.IMonitorBus,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, //{ // "type": "Tiger.Business.DbCacheBus,Tiger.Business", // "services": [ { "type": "Tiger.IBusiness.IDbCacheBus,Tiger.IBusiness" } ], // "autoActivate": true, // "injectProperties": true, // "instanceScope": "SingleInstance" //生命周期 //}, { "type": "Tiger.Business.DbCache.CodeRuleCache,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ICodeRuleCache,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.DbCache.SysParamCache,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.ISysParamCache,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.DbCache.MesDefectCache,Tiger.Business.MES", "services": [ { "type": "Tiger.IBusiness.IMesDefectCache,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.DbCache.MesPositionCache,Tiger.Business.MES", "services": [ { "type": "Tiger.IBusiness.IMesPositionCache,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 }, { "type": "Tiger.Business.ServicesBus,Tiger.Business", "services": [ { "type": "Tiger.IBusiness.IServicesBus,Tiger.IBusiness" } ], "autoActivate": true, "injectProperties": true, "instanceScope": "SingleInstance" //生命周期 } ] } /*生命周期枚举 InstanceScope: InstancePerDependency:When you resolve a component that is instance per dependency, you get a new one each time. SingleInstance:When you resolve a single instance component, you always get the same instance no matter where you request it. InstancePerLifetimeScope:When you resolve the instance per lifetime scope component, you get a single instance per nested scope (e.g., per unit of work). InstancePerMatchingLifetimeScope:When you create a nested lifetime scope, you have the ability to “tag” or “name” the scope. A component with per-matching-lifetime scope will have at most a single instance per nested lifetime scope that matches a given name. This allows you to create a sort of “scoped singleton” where other nested lifetime scopes can share an instance of a component without declaring a global shared instance. InstancePerRequest:Instance per request builds on top of instance per matching lifetime scope by providing a well-known lifetime scope tag, a registration convenience method, and integration for common application types. Behind the scenes, though, it’s still just instance per matching lifetime scope. InstancePerOwned:The Owned implicit relationship type creates new nested lifetime scopes. It is possible to scope dependencies to the owned instance using the instance-per-owned registrations. ThreadScope:Each thread executing through ThreadStart() will then get its own instance of MyThreadScopedComponent - which is essentially a “singleton” in the lifetime scope. Because scoped instances are never provided to outer scopes, it is easier to keep thread components separated. */