Browse Source

refactor.

pull/81/head
Halil İbrahim Kalkan 9 years ago
parent
commit
c431aa579c
  1. 24
      src/AbpDesk/AbpDesk.ConsoleDemo/AbpDesk/ConsoleDemo/AbpDeskConsoleDemoModule.cs
  2. 3
      src/AbpDesk/AbpDesk.ConsoleDemo/AbpDesk/ConsoleDemo/UserLister.cs
  3. 1
      src/AbpDesk/AbpDesk.ConsoleDemo/project.json
  4. 26
      src/AbpDesk/AbpDesk.EntityFrameworkCore/AbpDesk/EntityFrameworkCore/AbpDeskDbConfigurer.cs
  5. 27
      src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs
  6. 1
      src/AbpDesk/AbpDesk.Web.Mvc/project.json
  7. 10
      src/Volo.Abp.Identity/Volo/Abp/Identity/RoleStore.cs
  8. 8
      src/Volo.Abp.Identity/Volo/Abp/Identity/UserStore.cs
  9. 1
      src/Volo.Abp/project.json

24
src/AbpDesk/AbpDesk.ConsoleDemo/AbpDesk/ConsoleDemo/AbpDeskConsoleDemoModule.cs

@ -1,11 +1,8 @@
using System.IO;
using AbpDesk.Blogging;
using AbpDesk.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.Identity.EntityFrameworkCore;
using Volo.Abp.Modularity;
@ -20,31 +17,20 @@ namespace AbpDesk.ConsoleDemo
{
public override void ConfigureServices(IServiceCollection services)
{
var configuration = BuildConfiguration();
var configuration = BuildConfiguration(Directory.GetCurrentDirectory());
//Configure DbConnectionOptions by configuration file (appsettings.json)
services.Configure<DbConnectionOptions>(configuration);
services.Configure<AbpDbContextOptions>(options =>
{
//Configures all dbcontextes to use Sql Server with calculated connection string
options.Configure(context =>
{
context.DbContextOptions.UseSqlServer(context.ConnectionString);
});
});
AbpDeskDbConfigurer.Configure(services, configuration);
services.AddAssemblyOf<AbpDeskConsoleDemoModule>();
}
private static IConfigurationRoot BuildConfiguration()
private static IConfigurationRoot BuildConfiguration(string basePath)
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.SetBasePath(basePath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
var configuration = builder.Build();
return configuration;
return builder.Build();
}
}
}

3
src/AbpDesk/AbpDesk.ConsoleDemo/AbpDesk/ConsoleDemo/UserLister.cs

@ -35,9 +35,6 @@ namespace AbpDesk.ConsoleDemo
using (var uow = _unitOfWorkManager.Begin())
{
//TODO: Create IdentityUser by a factory or manager to ensure requirements (like unique username) or just use UserManager.Create here?
//_userRepository.Insert(new IdentityUser(_guidGenerator.Create(), "tugrul"), true);
foreach (var user in _userRepository.ToList())
{
Console.WriteLine("# " + user);

1
src/AbpDesk/AbpDesk.ConsoleDemo/project.json

@ -20,7 +20,6 @@
"version": "1.1.0-preview4-final"
},
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"Volo.Abp.Identity": "1.0.0-*",
"Volo.Abp.Identity.EntityFrameworkCore": "1.0.0-*",
"AbpDesk.MongoBlog": "1.0.0-*"

26
src/AbpDesk/AbpDesk.EntityFrameworkCore/AbpDesk/EntityFrameworkCore/AbpDeskDbConfigurer.cs

@ -0,0 +1,26 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
namespace AbpDesk.EntityFrameworkCore
{
public static class AbpDeskDbConfigurer
{
public static void Configure(IServiceCollection services, IConfigurationRoot configuration)
{
//Configure DbConnectionOptions by configuration file (appsettings.json)
services.Configure<DbConnectionOptions>(configuration);
services.Configure<AbpDbContextOptions>(options =>
{
//Configures all dbcontextes to use Sql Server with calculated connection string
options.Configure(context =>
{
context.DbContextOptions.UseSqlServer(context.ConnectionString);
});
});
}
}
}

27
src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs

@ -20,24 +20,12 @@ namespace AbpDesk.Web.Mvc
public override void ConfigureServices(IServiceCollection services)
{
var hostingEnvironment = services.GetSingletonInstance<IHostingEnvironment>();
var configuration = BuildConfiguration(hostingEnvironment.ContentRootPath);
//TODO: This code is pretty similar to AbpDeskConsoleDemoModule, so use a common code!
var configuration = BuildConfiguration(hostingEnvironment);
//Configure DbConnectionOptions by configuration file (appsettings.json)
services.Configure<DbConnectionOptions>(configuration);
services.Configure<AbpDbContextOptions>(options =>
{
//Configures all dbcontextes to use Sql Server with calculated connection string
options.Configure(context =>
{
context.DbContextOptions.UseSqlServer(context.ConnectionString);
});
});
AbpDeskDbConfigurer.Configure(services, configuration);
services.AddMvc();
services.AddAssemblyOf<AbpDeskWebMvcModule>();
}
public override void OnApplicationInitialization(ApplicationInitializationContext context)
@ -61,14 +49,13 @@ namespace AbpDesk.Web.Mvc
});
}
private static IConfigurationRoot BuildConfiguration(IHostingEnvironment hostingEnvironment)
private static IConfigurationRoot BuildConfiguration(string basePath)
{
var builder = new ConfigurationBuilder()
.SetBasePath(hostingEnvironment.ContentRootPath)
.SetBasePath(basePath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
var configuration = builder.Build();
return configuration;
return builder.Build();
}
}
}

1
src/AbpDesk/AbpDesk.Web.Mvc/project.json

@ -11,7 +11,6 @@
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"AbpDesk.Application.Contracts": "1.0.0-*",
"Microsoft.EntityFrameworkCore.Tools": {
"type": "build",

10
src/Volo.Abp.Identity/Volo/Abp/Identity/RoleStore.cs

@ -6,6 +6,7 @@ using System.Threading;
using System.Threading.Tasks;
using JetBrains.Annotations;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.Logging;
using Volo.Abp.Uow;
using Volo.DependencyInjection;
@ -21,17 +22,20 @@ namespace Volo.Abp.Identity
{
private readonly IIdentityRoleRepository _roleRepository;
private readonly IUnitOfWorkManager _unitOfWorkManager;
private readonly ILogger<RoleStore> _logger;
/// <summary>
/// Constructs a new instance of <see cref="RoleStore"/>.
/// </summary>
public RoleStore(
IIdentityRoleRepository roleRepository,
IUnitOfWorkManager unitOfWorkManager,
IUnitOfWorkManager unitOfWorkManager,
ILogger<RoleStore> logger,
IdentityErrorDescriber describer = null)
{
_roleRepository = roleRepository;
_unitOfWorkManager = unitOfWorkManager;
_logger = logger;
ErrorDescriber = describer ?? new IdentityErrorDescriber();
}
@ -100,7 +104,7 @@ namespace Volo.Abp.Identity
}
catch (AbpDbConcurrencyException ex)
{
//TODO: Log...?
_logger.LogWarning(ex.ToString()); //Trigger some AbpHandledException event
return IdentityResult.Failed(ErrorDescriber.ConcurrencyFailure());
}
@ -126,7 +130,7 @@ namespace Volo.Abp.Identity
}
catch (AbpDbConcurrencyException ex)
{
//TODO: Log...
_logger.LogWarning(ex.ToString()); //Trigger some AbpHandledException event
return IdentityResult.Failed(ErrorDescriber.ConcurrencyFailure());
}

8
src/Volo.Abp.Identity/Volo/Abp/Identity/UserStore.cs

@ -7,6 +7,7 @@ using System.Threading;
using System.Threading.Tasks;
using JetBrains.Annotations;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.Logging;
using Volo.Abp.Uow;
using Volo.DependencyInjection;
using Volo.ExtensionMethods;
@ -43,6 +44,7 @@ namespace Volo.Abp.Identity
public bool AutoSaveChanges { get; set; } = true;
private readonly IIdentityRoleRepository _roleRepository;
private readonly ILogger<RoleStore> _logger;
private readonly IIdentityUserRepository _userRepository;
private readonly IUnitOfWorkManager _unitOfWorkManager;
@ -50,11 +52,13 @@ namespace Volo.Abp.Identity
IUnitOfWorkManager unitOfWorkManager,
IIdentityUserRepository userRepository,
IIdentityRoleRepository roleRepository,
ILogger<RoleStore> logger,
IdentityErrorDescriber describer = null) //TODO: describer? TODO: Test if DI supports optional injection
{
_unitOfWorkManager = unitOfWorkManager;
_userRepository = userRepository;
_roleRepository = roleRepository;
_logger = logger;
ErrorDescriber = describer ?? new IdentityErrorDescriber();
}
@ -190,7 +194,7 @@ namespace Volo.Abp.Identity
}
catch (AbpDbConcurrencyException ex)
{
//TODO: Log...?
_logger.LogWarning(ex.ToString()); //Trigger some AbpHandledException event
return IdentityResult.Failed(ErrorDescriber.ConcurrencyFailure());
}
@ -216,7 +220,7 @@ namespace Volo.Abp.Identity
}
catch (AbpDbConcurrencyException ex)
{
//TODO: Log...
_logger.LogWarning(ex.ToString()); //Trigger some AbpHandledException event
return IdentityResult.Failed(ErrorDescriber.ConcurrencyFailure());
}

1
src/Volo.Abp/project.json

@ -5,6 +5,7 @@
"NETStandard.Library": "1.6.1",
"Microsoft.Extensions.DependencyInjection": "1.1.0",
"Microsoft.Extensions.Options": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"System.Collections.Immutable": "1.3.0",
"System.Runtime.Loader": "4.3.0",

Loading…
Cancel
Save