refactor: 移除 EFCore 的引用使用 PetaPoco

This commit is contained in:
Argo-Lenovo 2022-01-01 14:05:44 +08:00
parent bafa4f1aa4
commit ee28d845f2
16 changed files with 132 additions and 111 deletions

View File

@ -1,4 +1,5 @@
using BootstrapAdmin.DataAccess.Models;
using BootstrapAdmin.DataAccess.EFCore.Models;
using BootstrapAdmin.DataAccess.Models;
using Microsoft.EntityFrameworkCore;
namespace BootstrapAdmin.DataAccess.EFCore
@ -27,13 +28,13 @@ namespace BootstrapAdmin.DataAccess.EFCore
///
/// </summary>
[NotNull]
public DbSet<User>? Users { get; set; }
public DbSet<EFUser>? Users { get; set; }
/// <summary>
///
/// </summary>
[NotNull]
public DbSet<Role>? Roles { get; set; }
public DbSet<EFRole>? Roles { get; set; }
/// <summary>
///
@ -45,7 +46,7 @@ namespace BootstrapAdmin.DataAccess.EFCore
///
/// </summary>
[NotNull]
public DbSet<Navigation>? Navigations { get; set; }
public DbSet<EFNavigation>? Navigations { get; set; }
/// <summary>
///
@ -57,7 +58,7 @@ namespace BootstrapAdmin.DataAccess.EFCore
///
/// </summary>
[NotNull]
public DbSet<Group>? Groups { get; set; }
public DbSet<EFGroup>? Groups { get; set; }
/// <summary>
///

View File

@ -0,0 +1,26 @@
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class EFGroup : Group
{
/// <summary>
///
/// </summary>
public ICollection<User>? Users { get; set; }
/// <summary>
///
/// </summary>
public ICollection<UserGroup>? UserGroup { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<RoleGroup>? RoleGroup { get; set; }
}

View File

@ -0,0 +1,16 @@
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class EFNavigation : Navigation
{
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<NavigationRole>? NavigationRoles { get; set; }
}

View File

@ -0,0 +1,37 @@
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class EFRole : Role
{
/// <summary>
///
/// </summary>
public ICollection<User>? Users { get; set; }
/// <summary>
///
/// </summary>
public List<UserRole>? UserRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Navigation>? Navigations { get; set; }
/// <summary>
///
/// </summary>
public List<NavigationRole>? NavigationRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Group>? Groups { get; set; }
/// <summary>
///
/// </summary>
public List<RoleGroup>? RoleGroup { get; set; }
}

View File

@ -0,0 +1,26 @@
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class EFUser : User
{
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<UserRole>? UserRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Group>? Groups { get; set; }
/// <summary>
///
/// </summary>
public ICollection<UserGroup>? UserGroup { get; set; }
}

View File

@ -1,4 +1,6 @@
namespace BootstrapAdmin.DataAccess.Models;
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class NavigationRole
{

View File

@ -1,10 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class RoleGroup
{

View File

@ -1,10 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class UserGroup
{

View File

@ -1,4 +1,6 @@
namespace BootstrapAdmin.DataAccess.Models;
using BootstrapAdmin.DataAccess.Models;
namespace BootstrapAdmin.DataAccess.EFCore.Models;
public class UserRole
{

View File

@ -16,7 +16,7 @@ public class UserService : IUser
public UserService(IDbContextFactory<BootstrapAdminContext> factory) => DbFactory = factory;
public List<User> GetAll()
public IEnumerable<User> GetAll()
{
using var context = DbFactory.CreateDbContext();
return context.Users.ToList();
@ -76,7 +76,7 @@ public class UserService : IUser
var group = dbcontext.Groups.Include(s => s.Users).Where(s => s.Id == groupId).FirstOrDefault();
if (group != null)
{
group.Users = dbcontext.Users.Where(s => userIds.Contains(s.Id)).ToList();
group.Users = dbcontext.Users.Where(s => userIds.Contains(s.Id));
return dbcontext.SaveChanges() > 0;
}
else

View File

@ -32,26 +32,6 @@ namespace BootstrapAdmin.DataAccess.Models
[Display(Name = "群组描述")]
public string? Description { get; set; }
/// <summary>
///
/// </summary>
public ICollection<User>? Users { get; set; }
/// <summary>
///
/// </summary>
public ICollection<UserGroup>? UserGroup { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<RoleGroup>? RoleGroup { get; set; }
public override string ToString() => $"{GroupName} ({GroupCode})";
}
}

View File

@ -73,15 +73,5 @@ namespace BootstrapAdmin.DataAccess.Models
///
/// </summary>
public bool HasChildren { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<NavigationRole>? NavigationRoles { get; set; }
}
}

View File

@ -26,36 +26,5 @@ namespace BootstrapAdmin.DataAccess.Models
[DisplayName("角色描述")]
[NotNull]
public string? Description { get; set; }
/// <summary>
///
/// </summary>
public ICollection<User>? Users { get; set; }
/// <summary>
///
/// </summary>
public List<UserRole>? UserRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Navigation>? Navigations { get; set; }
/// <summary>
///
/// </summary>
public List<NavigationRole>? NavigationRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Group>? Groups { get; set; }
/// <summary>
///
/// </summary>
public List<RoleGroup>? RoleGroup { get; set; }
}
}

View File

@ -107,26 +107,6 @@ namespace BootstrapAdmin.DataAccess.Models
/// </summary>
public int IsReset { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Role>? Roles { get; set; }
/// <summary>
///
/// </summary>
public List<UserRole>? UserRoles { get; set; }
/// <summary>
///
/// </summary>
public ICollection<Group>? Groups { get; set; }
/// <summary>
///
/// </summary>
public ICollection<UserGroup>? UserGroup { get; set; }
/// <summary>
/// 获得/设置 默认格式为 DisplayName (UserName)
/// </summary>

View File

@ -9,7 +9,7 @@
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\BootstrapAdmin.DataAccess.EFCore\BootstrapAdmin.DataAccess.EFCore.csproj" />
<ProjectReference Include="..\BootstrapAdmin.DataAccess.PetaPoco\BootstrapAdmin.DataAccess.PetaPoco.csproj" />
<ProjectReference Include="..\BootstrapAdmin.Extensions\BootstrapAdmin.Extensions.csproj" />
</ItemGroup>

View File

@ -2,7 +2,7 @@
using BootstrapAdmin.Web.Services.SMS;
using BootstrapAdmin.Web.Services.SMS.Tencent;
using Longbow.Tasks;
using Microsoft.EntityFrameworkCore;
//using Microsoft.EntityFrameworkCore;
using System.Text;
namespace Microsoft.Extensions.DependencyInjection
@ -75,15 +75,15 @@ namespace Microsoft.Extensions.DependencyInjection
services.AddScoped<BootstrapAppContext>();
// 增加 EFCore 数据服务
services.AddEFCoreDataAccessServices((provider, option) =>
{
var configuration = provider.GetRequiredService<IConfiguration>();
var connString = configuration.GetConnectionString("bb");
option.UseSqlite(connString);
});
//services.AddEFCoreDataAccessServices((provider, option) =>
//{
// var configuration = provider.GetRequiredService<IConfiguration>();
// var connString = configuration.GetConnectionString("bb");
// option.UseSqlite(connString);
//});
// 增加 PetaPoco 数据服务
//services.AddPetaPocoDataAccessServices();
services.AddPetaPocoDataAccessServices();
// 增加后台任务
services.AddTaskServices();