Browse Source

Fix AbpRegistrationBuilderExtensions to send the implementation type instead of service type to the OnServiceRegistredContext.

pull/221/head
Halil İbrahim Kalkan 9 years ago
parent
commit
9d1c0f5ad1
  1. 9
      src/Volo.Abp.Autofac/Autofac/Builder/AbpRegistrationBuilderExtensions.cs
  2. 5
      src/Volo.Abp.Core/Volo/Abp/DependencyInjection/OnServiceRegistredContext.cs
  3. 1
      test/Abp.IdentityServer.EntityFrameworkCore.Tests/Abp.IdentityServer.EntityFrameworkCore.Tests.csproj
  4. 4
      test/Abp.IdentityServer.EntityFrameworkCore.Tests/Volo/Abp/IdentityServer/AbpIdentityApplicationTestBase.cs
  5. 2
      test/Abp.IdentityServer.EntityFrameworkCore.Tests/Volo/Abp/IdentityServer/AbpIdentityServerTestEntityFrameworkCoreModule.cs
  6. 1
      test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Ambient_Scope_Tests.cs
  7. 1
      test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Events_Tests.cs
  8. 1
      test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Nested_Tests.cs

9
src/Volo.Abp.Autofac/Autofac/Builder/AbpRegistrationBuilderExtensions.cs

@ -31,18 +31,15 @@ namespace Autofac.Builder
}
registrationBuilder = registrationBuilder.EnablePropertyInjection(moduleContainer, implementationType);
registrationBuilder = registrationBuilder.InvokeRegistrationActions(registrationActionList, serviceType);
registrationBuilder = registrationBuilder.InvokeRegistrationActions(registrationActionList, serviceType, implementationType);
return registrationBuilder;
}
private static IRegistrationBuilder<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle> InvokeRegistrationActions<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle>(
this IRegistrationBuilder<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle> registrationBuilder,
ServiceRegistrationActionList registrationActionList,
Type serviceType)
private static IRegistrationBuilder<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle> InvokeRegistrationActions<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle>(this IRegistrationBuilder<TLimit, TConcreteReflectionActivatorData, TRegistrationStyle> registrationBuilder, ServiceRegistrationActionList registrationActionList, Type serviceType, Type implementationType)
where TConcreteReflectionActivatorData : ConcreteReflectionActivatorData
{
var serviceRegistredArgs = new OnServiceRegistredContext(serviceType);
var serviceRegistredArgs = new OnServiceRegistredContext(serviceType, implementationType);
foreach (var registrationAction in registrationActionList)
{

5
src/Volo.Abp.Core/Volo/Abp/DependencyInjection/OnServiceRegistredContext.cs

@ -9,10 +9,13 @@ namespace Volo.Abp.DependencyInjection
{
public virtual ITypeList<IAbpInterceptor> Interceptors { get; }
public virtual Type ServiceType { get; }
public virtual Type ImplementationType { get; }
public OnServiceRegistredContext([NotNull] Type implementationType)
public OnServiceRegistredContext(Type serviceType, [NotNull] Type implementationType)
{
ServiceType = Check.NotNull(serviceType, nameof(serviceType));
ImplementationType = Check.NotNull(implementationType, nameof(implementationType));
Interceptors = new TypeList<IAbpInterceptor>();

1
test/Abp.IdentityServer.EntityFrameworkCore.Tests/Abp.IdentityServer.EntityFrameworkCore.Tests.csproj

@ -13,6 +13,7 @@
<ItemGroup>
<ProjectReference Include="..\..\src\Volo.Abp.Autofac\Volo.Abp.Autofac.csproj" />
<ProjectReference Include="..\..\src\Volo.Abp.Identity.EntityFrameworkCore\Volo.Abp.Identity.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\..\src\Volo.Abp.IdentityServer.EntityFrameworkCore\Volo.Abp.IdentityServer.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\AbpTestBase\AbpTestBase.csproj" />
</ItemGroup>

4
test/Abp.IdentityServer.EntityFrameworkCore.Tests/Volo/Abp/IdentityServer/AbpIdentityApplicationTestBase.cs

@ -1,6 +1,4 @@
using Volo.Abp.TestBase;
namespace Volo.Abp.IdentityServer
namespace Volo.Abp.IdentityServer
{
public class AbpIdentityServerTestBase : AbpIntegratedTest<AbpIdentityServerTestEntityFrameworkCoreModule>
{

2
test/Abp.IdentityServer.EntityFrameworkCore.Tests/Volo/Abp/IdentityServer/AbpIdentityServerTestEntityFrameworkCoreModule.cs

@ -3,6 +3,7 @@ using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Autofac;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.Identity.EntityFrameworkCore;
using Volo.Abp.IdentityServer.EntityFrameworkCore;
using Volo.Abp.Modularity;
using Volo.Abp.Uow;
@ -11,6 +12,7 @@ namespace Volo.Abp.IdentityServer
{
[DependsOn(typeof(AbpAutofacModule))]
[DependsOn(typeof(AbpIdentityServerEntityFrameworkCoreModule))]
[DependsOn(typeof(AbpIdentityEntityFrameworkCoreModule))]
public class AbpIdentityServerTestEntityFrameworkCoreModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)

1
test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Ambient_Scope_Tests.cs

@ -1,7 +1,6 @@
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Shouldly;
using Volo.Abp.TestBase;
using Xunit;
namespace Volo.Abp.Uow

1
test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Events_Tests.cs

@ -1,7 +1,6 @@
using System;
using Microsoft.Extensions.DependencyInjection;
using Shouldly;
using Volo.Abp.TestBase;
using Xunit;
namespace Volo.Abp.Uow

1
test/Volo.Abp.Ddd.Tests/Volo/Abp/Uow/UnitOfWork_Nested_Tests.cs

@ -1,7 +1,6 @@
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Shouldly;
using Volo.Abp.TestBase;
using Xunit;
namespace Volo.Abp.Uow

Loading…
Cancel
Save