Skip to content

Commit 5ca0c66

Browse files
committed
Disable EF core global query filters while inserting seed data.
1 parent e29c6de commit 5ca0c66

File tree

6 files changed

+15
-10
lines changed

6 files changed

+15
-10
lines changed

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultEditionCreator.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Abp.Application.Editions;
33
using Abp.Application.Features;
44
using AbpCompanyName.AbpProjectName.Editions;
5+
using Microsoft.EntityFrameworkCore;
56

67
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Host
78
{
@@ -21,7 +22,7 @@ public void Create()
2122

2223
private void CreateEditions()
2324
{
24-
var defaultEdition = _context.Editions.FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);
25+
var defaultEdition = _context.Editions.IgnoreQueryFilters().FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);
2526
if (defaultEdition == null)
2627
{
2728
defaultEdition = new Edition { Name = EditionManager.DefaultEditionName, DisplayName = EditionManager.DefaultEditionName };
@@ -34,8 +35,7 @@ private void CreateEditions()
3435

3536
private void CreateFeatureIfNotExists(int editionId, string featureName, bool isEnabled)
3637
{
37-
var defaultEditionChatFeature = _context.EditionFeatureSettings
38-
.FirstOrDefault(ef => ef.EditionId == editionId && ef.Name == featureName);
38+
var defaultEditionChatFeature = _context.EditionFeatureSettings.IgnoreQueryFilters().FirstOrDefault(ef => ef.EditionId == editionId && ef.Name == featureName);
3939

4040
if (defaultEditionChatFeature == null)
4141
{

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultLanguagesCreator.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Collections.Generic;
22
using System.Linq;
33
using Abp.Localization;
4+
using Microsoft.EntityFrameworkCore;
45

56
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Host
67
{
@@ -47,7 +48,7 @@ private void CreateLanguages()
4748

4849
private void AddLanguageIfNotExists(ApplicationLanguage language)
4950
{
50-
if (_context.Languages.Any(l => l.TenantId == language.TenantId && l.Name == language.Name))
51+
if (_context.Languages.IgnoreQueryFilters().Any(l => l.TenantId == language.TenantId && l.Name == language.Name))
5152
{
5253
return;
5354
}

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultSettingsCreator.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Abp.Configuration;
33
using Abp.Localization;
44
using Abp.Net.Mail;
5+
using Microsoft.EntityFrameworkCore;
56

67
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Host
78
{
@@ -26,7 +27,7 @@ public void Create()
2627

2728
private void AddSettingIfNotExists(string name, string value, int? tenantId = null)
2829
{
29-
if (_context.Settings.Any(s => s.Name == name && s.TenantId == tenantId && s.UserId == null))
30+
if (_context.Settings.IgnoreQueryFilters().Any(s => s.Name == name && s.TenantId == tenantId && s.UserId == null))
3031
{
3132
return;
3233
}

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/HostRoleAndUserCreator.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using AbpCompanyName.AbpProjectName.Authorization;
77
using AbpCompanyName.AbpProjectName.Authorization.Roles;
88
using AbpCompanyName.AbpProjectName.Authorization.Users;
9+
using Microsoft.EntityFrameworkCore;
910

1011
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Host
1112
{
@@ -27,7 +28,7 @@ private void CreateHostRoleAndUsers()
2728
{
2829
//Admin role for host
2930

30-
var adminRoleForHost = _context.Roles.FirstOrDefault(r => r.TenantId == null && r.Name == StaticRoleNames.Host.Admin);
31+
var adminRoleForHost = _context.Roles.IgnoreQueryFilters().FirstOrDefault(r => r.TenantId == null && r.Name == StaticRoleNames.Host.Admin);
3132
if (adminRoleForHost == null)
3233
{
3334
adminRoleForHost = _context.Roles.Add(new Role(null, StaticRoleNames.Host.Admin, StaticRoleNames.Host.Admin) { IsStatic = true, IsDefault = true }).Entity;

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Tenants/DefaultTenantBuilder.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Linq;
22
using AbpCompanyName.AbpProjectName.Editions;
33
using AbpCompanyName.AbpProjectName.MultiTenancy;
4+
using Microsoft.EntityFrameworkCore;
45

56
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Tenants
67
{
@@ -22,12 +23,12 @@ private void CreateDefaultTenant()
2223
{
2324
//Default tenant
2425

25-
var defaultTenant = _context.Tenants.FirstOrDefault(t => t.TenancyName == Tenant.DefaultTenantName);
26+
var defaultTenant = _context.Tenants.IgnoreQueryFilters().FirstOrDefault(t => t.TenancyName == Tenant.DefaultTenantName);
2627
if (defaultTenant == null)
2728
{
2829
defaultTenant = new Tenant(Tenant.DefaultTenantName, Tenant.DefaultTenantName);
2930

30-
var defaultEdition = _context.Editions.FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);
31+
var defaultEdition = _context.Editions.IgnoreQueryFilters().FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);
3132
if (defaultEdition != null)
3233
{
3334
defaultTenant.EditionId = defaultEdition.Id;

aspnet-core/src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/EntityFrameworkCore/Seed/Tenants/TenantRoleAndUserBuilder.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using AbpCompanyName.AbpProjectName.Authorization.Users;
99
using Microsoft.AspNetCore.Identity;
1010
using Microsoft.Extensions.Options;
11+
using Microsoft.EntityFrameworkCore;
1112

1213
namespace AbpCompanyName.AbpProjectName.EntityFrameworkCore.Seed.Tenants
1314
{
@@ -31,7 +32,7 @@ private void CreateRolesAndUsers()
3132
{
3233
//Admin role
3334

34-
var adminRole = _context.Roles.FirstOrDefault(r => r.TenantId == _tenantId && r.Name == StaticRoleNames.Tenants.Admin);
35+
var adminRole = _context.Roles.IgnoreQueryFilters().FirstOrDefault(r => r.TenantId == _tenantId && r.Name == StaticRoleNames.Tenants.Admin);
3536
if (adminRole == null)
3637
{
3738
adminRole = _context.Roles.Add(new Role(_tenantId, StaticRoleNames.Tenants.Admin, StaticRoleNames.Tenants.Admin) { IsStatic = true }).Entity;
@@ -60,7 +61,7 @@ private void CreateRolesAndUsers()
6061

6162
//admin user
6263

63-
var adminUser = _context.Users.FirstOrDefault(u => u.TenantId == _tenantId && u.UserName == AbpUserBase.AdminUserName);
64+
var adminUser = _context.Users.IgnoreQueryFilters().FirstOrDefault(u => u.TenantId == _tenantId && u.UserName == AbpUserBase.AdminUserName);
6465
if (adminUser == null)
6566
{
6667
adminUser = User.CreateTenantAdminUser(_tenantId, "[email protected]");

0 commit comments

Comments
 (0)