Browse Source

Extract project: Volo.Abp.Data

pull/183/head
Halil İbrahim Kalkan 9 years ago
parent
commit
2ca009cd7b
  1. 22
      Volo.Abp.sln
  2. BIN
      src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll
  3. 20
      src/Volo.Abp.Data/Volo.Abp.Data.csproj
  4. 15
      src/Volo.Abp.Data/Volo/Abp/Data/AbpDataModule.cs
  5. 0
      src/Volo.Abp.Data/Volo/Abp/Data/ConnectionStringNameAttribute.cs
  6. 0
      src/Volo.Abp.Data/Volo/Abp/Data/ConnectionStrings.cs
  7. 0
      src/Volo.Abp.Data/Volo/Abp/Data/DataFilter.cs
  8. 0
      src/Volo.Abp.Data/Volo/Abp/Data/DataFilterOptions.cs
  9. 0
      src/Volo.Abp.Data/Volo/Abp/Data/DataFilterState.cs
  10. 0
      src/Volo.Abp.Data/Volo/Abp/Data/DbConnectionOptions.cs
  11. 0
      src/Volo.Abp.Data/Volo/Abp/Data/DefaultConnectionStringResolver.cs
  12. 0
      src/Volo.Abp.Data/Volo/Abp/Data/IConnectionStringResolver.cs
  13. 0
      src/Volo.Abp.Data/Volo/Abp/Data/IConnectionStringResolverExtensions.cs
  14. 0
      src/Volo.Abp.Data/Volo/Abp/Data/IDataFilter.cs
  15. 2
      src/Volo.Abp.Identity.Web/Pages/Identity/Users/EditModal.cshtml
  16. 1
      src/Volo.Abp/Volo.Abp.csproj
  17. 4
      src/Volo.Abp/Volo/Abp/AbpCommonModule.cs
  18. 5
      src/Volo.Abp/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs
  19. 0
      src/Volo.Abp/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs
  20. 23
      src/Volo.Abp/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs
  21. 23
      test/Volo.Abp.Data.Tests/Volo.Abp.Data.Tests.csproj
  22. 0
      test/Volo.Abp.Data.Tests/Volo/Abp/Data/ConnectionStringNameAttribute_Tests.cs
  23. 2
      test/Volo.Abp.Data.Tests/Volo/Abp/Data/ConnectionStringResolver_Tests.cs
  24. 12
      test/Volo.Abp.Tests/Volo/Abp/Domain/Repositories/RepositoryRegistration_Tests.cs

22
Volo.Abp.sln

@ -160,13 +160,17 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.VirtualFileSystem.
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Core", "src\Volo.Abp.Core\Volo.Abp.Core.csproj", "{A7A97BFD-48FA-45D1-8423-031BA30BEAA1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Localization", "src\Volo.Abp.Localization\Volo.Abp.Localization.csproj", "{166E89F7-A505-45F2-B4CD-F345DE39030E}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Localization", "src\Volo.Abp.Localization\Volo.Abp.Localization.csproj", "{166E89F7-A505-45F2-B4CD-F345DE39030E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Localization.Tests", "test\Volo.Abp.Localization.Tests\Volo.Abp.Localization.Tests.csproj", "{6E50143F-0982-4BCB-9D0E-FF5451AE8123}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Localization.Tests", "test\Volo.Abp.Localization.Tests\Volo.Abp.Localization.Tests.csproj", "{6E50143F-0982-4BCB-9D0E-FF5451AE8123}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Core.Tests", "test\Volo.Abp.Core.Tests\Volo.Abp.Core.Tests.csproj", "{3622B544-1345-4230-ABC2-4902328DE971}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Core.Tests", "test\Volo.Abp.Core.Tests\Volo.Abp.Core.Tests.csproj", "{3622B544-1345-4230-ABC2-4902328DE971}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.ApiVersioning.Abstractions", "src\Volo.Abp.ApiVersioning.Abstractions\Volo.Abp.ApiVersioning.Abstractions.csproj", "{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.ApiVersioning.Abstractions", "src\Volo.Abp.ApiVersioning.Abstractions\Volo.Abp.ApiVersioning.Abstractions.csproj", "{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Data", "src\Volo.Abp.Data\Volo.Abp.Data.csproj", "{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Data.Tests", "test\Volo.Abp.Data.Tests\Volo.Abp.Data.Tests.csproj", "{5D2275B7-0745-420A-AF1C-32C563DAB5C8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -434,6 +438,14 @@ Global
{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA}.Release|Any CPU.Build.0 = Release|Any CPU
{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7}.Release|Any CPU.Build.0 = Release|Any CPU
{5D2275B7-0745-420A-AF1C-32C563DAB5C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5D2275B7-0745-420A-AF1C-32C563DAB5C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5D2275B7-0745-420A-AF1C-32C563DAB5C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5D2275B7-0745-420A-AF1C-32C563DAB5C8}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -514,6 +526,8 @@ Global
{6E50143F-0982-4BCB-9D0E-FF5451AE8123} = {37087D1B-3693-4E96-983D-A69F210BDE53}
{3622B544-1345-4230-ABC2-4902328DE971} = {37087D1B-3693-4E96-983D-A69F210BDE53}
{BC55B87F-D2BD-428D-8F78-A95EE7BDFDFA} = {4C753F64-0C93-4D65-96C2-A40893AFC1E8}
{5E7381EE-54BC-4BFD-883A-8C6578C2CAD7} = {4C753F64-0C93-4D65-96C2-A40893AFC1E8}
{5D2275B7-0745-420A-AF1C-32C563DAB5C8} = {37087D1B-3693-4E96-983D-A69F210BDE53}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BB97ECF4-9A84-433F-A80B-2A3285BDD1D5}

BIN
src/AbpDesk/Web_PlugIns/AbpDesk.MongoBlog.dll

Binary file not shown.

20
src/Volo.Abp.Data/Volo.Abp.Data.csproj

@ -0,0 +1,20 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<AssemblyName>Volo.Abp.Data</AssemblyName>
<PackageId>Volo.Abp.Data</PackageId>
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;</AssetTargetFallback>
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.Core\Volo.Abp.Core.csproj" />
</ItemGroup>
</Project>

15
src/Volo.Abp.Data/Volo/Abp/Data/AbpDataModule.cs

@ -0,0 +1,15 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Modularity;
namespace Volo.Abp.Data
{
public class AbpDataModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
{
services.AddSingleton(typeof(IDataFilter<>), typeof(DataFilter<>));
services.AddAssemblyOf<AbpDataModule>();
}
}
}

0
src/Volo.Abp/Volo/Abp/Data/ConnectionStringNameAttribute.cs → src/Volo.Abp.Data/Volo/Abp/Data/ConnectionStringNameAttribute.cs

0
src/Volo.Abp/Volo/Abp/Data/ConnectionStrings.cs → src/Volo.Abp.Data/Volo/Abp/Data/ConnectionStrings.cs

0
src/Volo.Abp/Volo/Abp/Data/DataFilter.cs → src/Volo.Abp.Data/Volo/Abp/Data/DataFilter.cs

0
src/Volo.Abp/Volo/Abp/Data/DataFilterOptions.cs → src/Volo.Abp.Data/Volo/Abp/Data/DataFilterOptions.cs

0
src/Volo.Abp/Volo/Abp/Data/DataFilterState.cs → src/Volo.Abp.Data/Volo/Abp/Data/DataFilterState.cs

0
src/Volo.Abp/Volo/Abp/Data/DbConnectionOptions.cs → src/Volo.Abp.Data/Volo/Abp/Data/DbConnectionOptions.cs

0
src/Volo.Abp/Volo/Abp/Data/DefaultConnectionStringResolver.cs → src/Volo.Abp.Data/Volo/Abp/Data/DefaultConnectionStringResolver.cs

0
src/Volo.Abp/Volo/Abp/Data/IConnectionStringResolver.cs → src/Volo.Abp.Data/Volo/Abp/Data/IConnectionStringResolver.cs

0
src/Volo.Abp/Volo/Abp/Data/IConnectionStringResolverExtensions.cs → src/Volo.Abp.Data/Volo/Abp/Data/IConnectionStringResolverExtensions.cs

0
src/Volo.Abp/Volo/Abp/Data/IDataFilter.cs → src/Volo.Abp.Data/Volo/Abp/Data/IDataFilter.cs

2
src/Volo.Abp.Identity.Web/Pages/Identity/Users/EditModal.cshtml

@ -8,7 +8,7 @@
}
<form method="post" asp-page="/Identity/Users/EditModal">
<abp-modal>
<abp-modal-header title="@L["Edit"]"></abp-modal-header>

1
src/Volo.Abp/Volo.Abp.csproj

@ -16,6 +16,7 @@
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.ApiVersioning.Abstractions\Volo.Abp.ApiVersioning.Abstractions.csproj" />
<ProjectReference Include="..\Volo.Abp.Core\Volo.Abp.Core.csproj" />
<ProjectReference Include="..\Volo.Abp.Data\Volo.Abp.Data.csproj" />
<ProjectReference Include="..\Volo.Abp.Localization\Volo.Abp.Localization.csproj" />
<ProjectReference Include="..\Volo.Abp.VirtualFileSystem\Volo.Abp.VirtualFileSystem.csproj" />
</ItemGroup>

4
src/Volo.Abp/Volo/Abp/AbpCommonModule.cs

@ -15,6 +15,7 @@ namespace Volo.Abp
[DependsOn(typeof(AbpLocalizationModule))]
[DependsOn(typeof(AbpVirtualFileSystemModule))]
[DependsOn(typeof(AbpApiVersioningAbstractionsModule))]
[DependsOn(typeof(AbpDataModule))]
public class AbpCommonModule : AbpModule
{
public override void PreConfigureServices(IServiceCollection services)
@ -38,8 +39,7 @@ namespace Volo.Abp
public override void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<ICancellationTokenProvider>(NullCancellationTokenProvider.Instance);
services.AddSingleton(typeof(IDataFilter<>), typeof(DataFilter<>));
services.AddAssemblyOf<AbpCommonModule>();
}
}

5
src/Volo.Abp/Volo/Abp/Data/CommonDbContextRegistrationOptions.cs → src/Volo.Abp/Volo/Abp/DependencyInjection/CommonDbContextRegistrationOptions.cs

@ -7,7 +7,10 @@ using Volo.Abp.Reflection;
namespace Volo.Abp.Data
{
public class CommonDbContextRegistrationOptions : ICommonDbContextRegistrationOptionsBuilder
/// <summary>
/// This is a base class for dbcoUse derived
/// </summary>
public abstract class CommonDbContextRegistrationOptions : ICommonDbContextRegistrationOptionsBuilder
{
public bool SpecifiedDefaultRepositoryTypes => DefaultRepositoryImplementationType != null && DefaultRepositoryImplementationTypeWithDefaultPrimaryKey != null;

0
src/Volo.Abp/Volo/Abp/Data/ICommonDbContextRegistrationOptionsBuilder.cs → src/Volo.Abp/Volo/Abp/DependencyInjection/ICommonDbContextRegistrationOptionsBuilder.cs

23
src/Volo.Abp/Volo/Abp/Domain/Repositories/RepositoryRegistrarBase.cs

@ -3,6 +3,7 @@ using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Data;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Reflection;
namespace Volo.Abp.Domain.Repositories
{
@ -33,7 +34,7 @@ namespace Volo.Abp.Domain.Repositories
{
foreach (var entityType in GetEntityTypes(dbContextType))
{
if (!Options.ShouldRegisterDefaultRepositoryFor(entityType))
if (!ShouldRegisterDefaultRepositoryFor(entityType))
{
continue;
}
@ -64,6 +65,26 @@ namespace Volo.Abp.Domain.Repositories
services.AddDefaultRepository(entityType, repositoryImplementationType);
}
public bool ShouldRegisterDefaultRepositoryFor(Type entityType)
{
if (!Options.RegisterDefaultRepositories)
{
return false;
}
if (Options.CustomRepositories.ContainsKey(entityType))
{
return false;
}
if (!Options.IncludeAllEntitiesForDefaultRepositories && !ReflectionHelper.IsAssignableToGenericType(entityType, typeof(IAggregateRoot<>)))
{
return false;
}
return true;
}
protected abstract IEnumerable<Type> GetEntityTypes(Type dbContextType);
protected abstract Type GetRepositoryTypeForDefaultPk(Type dbContextType, Type entityType);

23
test/Volo.Abp.Data.Tests/Volo.Abp.Data.Tests.csproj

@ -0,0 +1,23 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<AssemblyName>Volo.Abp.Data.Tests</AssemblyName>
<PackageId>Volo.Abp.Data.Tests</PackageId>
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\AbpTestBase\AbpTestBase.csproj" />
<ProjectReference Include="..\..\src\Volo.Abp.Data\Volo.Abp.Data.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
</ItemGroup>
</Project>

0
test/Volo.Abp.Tests/Volo/Abp/Data/ConnectionStringNameAttribute_Tests.cs → test/Volo.Abp.Data.Tests/Volo/Abp/Data/ConnectionStringNameAttribute_Tests.cs

2
test/Volo.Abp.Tests/Volo/Abp/Data/ConnectionStringResolver_Tests.cs → test/Volo.Abp.Data.Tests/Volo/Abp/Data/ConnectionStringResolver_Tests.cs

@ -38,7 +38,7 @@ namespace Volo.Abp.Data
_connectionStringResolver.Resolve(Database2Name).ShouldBe(DefaultConnString);
}
[DependsOn(typeof(AbpCommonModule))]
[DependsOn(typeof(AbpDataModule))]
public class TestModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)

12
test/Volo.Abp.Tests/Volo/Abp/Domain/Repositories/RepositoryRegistration_Tests.cs

@ -16,7 +16,7 @@ namespace Volo.Abp.Domain.Repositories
var services = new ServiceCollection();
var options = new CommonDbContextRegistrationOptions();
var options = new TestDbContextRegistrationOptions();
options.WithDefaultRepositories();
//Act
@ -37,7 +37,7 @@ namespace Volo.Abp.Domain.Repositories
var services = new ServiceCollection();
var options = new CommonDbContextRegistrationOptions();
var options = new TestDbContextRegistrationOptions();
options.WithDefaultRepositories(true);
//Act
@ -58,7 +58,7 @@ namespace Volo.Abp.Domain.Repositories
var services = new ServiceCollection();
var options = new CommonDbContextRegistrationOptions();
var options = new TestDbContextRegistrationOptions();
options
.WithDefaultRepositories(true)
.WithCustomRepository<MyTestAggregateRootWithDefaultPk, MyTestAggregateRootWithDefaultPkCustomRepository>();
@ -81,7 +81,7 @@ namespace Volo.Abp.Domain.Repositories
var services = new ServiceCollection();
var options = new CommonDbContextRegistrationOptions();
var options = new TestDbContextRegistrationOptions();
options
.WithDefaultRepositories(true)
.WithDefaultRepositoryClasses(typeof(MyTestCustomBaseRepository<,>), typeof(MyTestCustomBaseRepository<>));
@ -193,5 +193,9 @@ namespace Volo.Abp.Domain.Repositories
}
public class TestDbContextRegistrationOptions : CommonDbContextRegistrationOptions
{
}
}
}

Loading…
Cancel
Save