添加工作单元
This commit is contained in:
@@ -15,6 +15,7 @@ using Yi.Framework.Interface;
|
||||
using Yi.Framework.Job;
|
||||
using Yi.Framework.Repository;
|
||||
using Yi.Framework.Service;
|
||||
using Yi.Framework.Uow.Interceptors;
|
||||
using Yi.Framework.WebCore.AutoFacExtend;
|
||||
using Module = Autofac.Module;
|
||||
|
||||
@@ -48,7 +49,8 @@ namespace Yi.Framework.WebCore.AutoFacExtend
|
||||
containerBuilder.RegisterAssemblyTypes(assemblysServices)
|
||||
.AsImplementedInterfaces()
|
||||
.InstancePerLifetimeScope()
|
||||
.EnableInterfaceInterceptors();
|
||||
.EnableInterfaceInterceptors()
|
||||
.InterceptedBy(typeof(UnitOfWorkInterceptor));
|
||||
|
||||
///反射注册任务调度层
|
||||
var assemblysJob = GetDll("Yi.Framework.Job.dll");
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
|
||||
using Autofac;
|
||||
using Autofac.Extras.DynamicProxy;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using System;
|
||||
@@ -9,6 +10,7 @@ using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Yi.Framework.Common.Attribute;
|
||||
using Yi.Framework.Uow.Interceptors;
|
||||
|
||||
namespace Yi.Framework.WebCore.MiddlewareExtend
|
||||
{
|
||||
@@ -44,41 +46,41 @@ namespace Yi.Framework.WebCore.MiddlewareExtend
|
||||
case LifeTime.Singleton:
|
||||
if (type.IsGenericType)
|
||||
{
|
||||
build.RegisterGeneric(type).As(serviceType).SingleInstance();
|
||||
build.RegisterGeneric(type).As(serviceType).SingleInstance().EnableInterfaceInterceptors();
|
||||
}
|
||||
else
|
||||
{
|
||||
build.RegisterType(type).As(serviceType).SingleInstance();
|
||||
build.RegisterType(type).As(serviceType).SingleInstance().EnableInterfaceInterceptors();
|
||||
}
|
||||
break;
|
||||
case LifeTime.Scoped:
|
||||
if (type.IsGenericType)
|
||||
{
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerLifetimeScope();
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerLifetimeScope().EnableInterfaceInterceptors();
|
||||
}
|
||||
else
|
||||
{
|
||||
build.RegisterType(type).As(serviceType).InstancePerLifetimeScope();
|
||||
build.RegisterType(type).As(serviceType).InstancePerLifetimeScope().EnableInterfaceInterceptors();
|
||||
}
|
||||
break;
|
||||
case LifeTime.Transient:
|
||||
if (type.IsGenericType)
|
||||
{
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerDependency();
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerDependency().EnableInterfaceInterceptors();
|
||||
}
|
||||
else
|
||||
{
|
||||
build.RegisterType(type).As(serviceType).InstancePerDependency();
|
||||
build.RegisterType(type).As(serviceType).InstancePerDependency().EnableInterfaceInterceptors();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (type.IsGenericType)
|
||||
{
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerDependency();
|
||||
build.RegisterGeneric(type).As(serviceType).InstancePerDependency().EnableInterfaceInterceptors();
|
||||
}
|
||||
else
|
||||
{
|
||||
build.RegisterType(type).As(serviceType).InstancePerDependency();
|
||||
build.RegisterType(type).As(serviceType).InstancePerDependency().EnableInterfaceInterceptors();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Yi.Framework.Core\Yi.Framework.Core.csproj" />
|
||||
<ProjectReference Include="..\Yi.Framework.Service\Yi.Framework.Service.csproj" />
|
||||
<ProjectReference Include="..\Yi.Framework.Uow\Yi.Framework.Uow.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
Reference in New Issue
Block a user