/*生命周期枚举
|
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<T> 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<T> 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.
|
*/
|