diff --git a/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs b/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs
new file mode 100644
index 0000000000..7786b1df5c
--- /dev/null
+++ b/src/AbpDesk/AbpDesk.Application.Contracts/AbpDesk/AbpDeskApplicationContractsModule.cs
@@ -0,0 +1,11 @@
+using Volo.Abp;
+using Volo.Abp.Modularity;
+
+namespace AbpDesk
+{
+ [DependsOn(typeof(AbpCommonModule))]
+ public class AbpDeskApplicationContractsModule : AbpModule
+ {
+
+ }
+}
diff --git a/src/AbpDesk/AbpDesk.Application/AbpDesk/AbpDeskApplicationModule.cs b/src/AbpDesk/AbpDesk.Application/AbpDesk/AbpDeskApplicationModule.cs
index 8eca7c59cb..eae5693f53 100644
--- a/src/AbpDesk/AbpDesk.Application/AbpDesk/AbpDeskApplicationModule.cs
+++ b/src/AbpDesk/AbpDesk.Application/AbpDesk/AbpDeskApplicationModule.cs
@@ -4,7 +4,11 @@ using Volo.Abp.Modularity;
namespace AbpDesk
{
- [DependsOn(typeof(AbpDeskDomainModule), typeof(AbpAutoMapperModule))]
+ [DependsOn(
+ typeof(AbpDeskDomainModule),
+ typeof(AbpDeskApplicationContractsModule),
+ typeof(AbpAutoMapperModule)
+ )]
public class AbpDeskApplicationModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
diff --git a/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs b/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs
index e02eb299c8..ac0859ba17 100644
--- a/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs
+++ b/src/AbpDesk/AbpDesk.Domain/AbpDesk/AbpDeskDomainModule.cs
@@ -1,8 +1,10 @@
using Microsoft.Extensions.DependencyInjection;
+using Volo.Abp;
using Volo.Abp.Modularity;
namespace AbpDesk
{
+ [DependsOn(typeof(AbpCommonModule))]
public class AbpDeskDomainModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
diff --git a/src/AbpDesk/AbpDesk.SamplePlugInModule/AbpDeskSamplePlugInModule.cs b/src/AbpDesk/AbpDesk.SamplePlugInModule/AbpDeskSamplePlugInModule.cs
index 29e3de98e2..99b3a94a14 100644
--- a/src/AbpDesk/AbpDesk.SamplePlugInModule/AbpDeskSamplePlugInModule.cs
+++ b/src/AbpDesk/AbpDesk.SamplePlugInModule/AbpDeskSamplePlugInModule.cs
@@ -1,4 +1,5 @@
using Microsoft.Extensions.DependencyInjection;
+using Volo.Abp;
using Volo.Abp.Modularity;
namespace AbpDesk.SamplePlugInModule
@@ -6,6 +7,7 @@ namespace AbpDesk.SamplePlugInModule
/* This is just a sample plugin module to test loading plugin modules.
*/
+ [DependsOn(typeof(AbpCommonModule))]
public class AbpDeskSamplePlugInModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
diff --git a/src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll b/src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll
index 5570b82fea..0231fbe6f3 100644
Binary files a/src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll and b/src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll differ
diff --git a/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/AbpAccountApplicationContractsModule.cs b/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/AbpAccountApplicationContractsModule.cs
index 7c57bb8c50..19ef08e8ff 100644
--- a/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/AbpAccountApplicationContractsModule.cs
+++ b/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/AbpAccountApplicationContractsModule.cs
@@ -3,6 +3,7 @@ using Volo.Abp.Modularity;
namespace Volo.Abp.Account
{
+ [DependsOn(typeof(AbpCommonModule))]
public class AbpAccountApplicationContractsModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
diff --git a/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs b/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs
index 07a3345e33..2515fcde6e 100644
--- a/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs
+++ b/src/Volo.Abp.AutoMapper/Volo/Abp/AutoMapper/AbpAutoMapperModule.cs
@@ -10,6 +10,7 @@ using Volo.Abp.Reflection;
namespace Volo.Abp.AutoMapper
{
+ [DependsOn(typeof(AbpCommonModule))]
public class AbpAutoMapperModule : AbpModule
{
private static volatile bool _createdMappingsBefore;
diff --git a/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj b/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
index 49ed5ff8f0..0dbde0baf7 100644
--- a/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
+++ b/src/Volo.Abp.Autofac/Volo.Abp.Autofac.csproj
@@ -19,7 +19,6 @@
-
\ No newline at end of file
diff --git a/src/Volo.Abp.Castle.Core/Volo/Abp/Castle/AbpCastleCoreModule.cs b/src/Volo.Abp.Castle.Core/Volo/Abp/Castle/AbpCastleCoreModule.cs
index d250aab5d0..55c4302af8 100644
--- a/src/Volo.Abp.Castle.Core/Volo/Abp/Castle/AbpCastleCoreModule.cs
+++ b/src/Volo.Abp.Castle.Core/Volo/Abp/Castle/AbpCastleCoreModule.cs
@@ -4,6 +4,7 @@ using Volo.Abp.Modularity;
namespace Volo.Abp.Castle
{
+ [DependsOn(typeof(AbpCommonModule))]
public class AbpCastleCoreModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
diff --git a/src/Volo.Abp/Microsoft/Extensions/DependencyInjection/ServiceCollectionApplicationExtensions.cs b/src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionApplicationExtensions.cs
similarity index 100%
rename from src/Volo.Abp/Microsoft/Extensions/DependencyInjection/ServiceCollectionApplicationExtensions.cs
rename to src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionApplicationExtensions.cs
diff --git a/src/Volo.Abp/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs b/src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs
similarity index 94%
rename from src/Volo.Abp/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs
rename to src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs
index 36188d5422..240513a5ce 100644
--- a/src/Volo.Abp/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs
+++ b/src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionCommonExtensions.cs
@@ -124,7 +124,7 @@ namespace Microsoft.Extensions.DependencyInjection
/// Returns a to resolve a service from given
/// once dependency injection registration phase completed.
///
- internal static Lazy GetServiceLazy(this IServiceCollection services)
+ public static Lazy GetServiceLazy(this IServiceCollection services)
{
return new Lazy(services.GetService, true);
}
@@ -133,7 +133,7 @@ namespace Microsoft.Extensions.DependencyInjection
/// Returns a to resolve a service from given
/// once dependency injection registration phase completed.
///
- internal static Lazy