diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs index c462be1a60..54082c0b6d 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/Microservice/MicroserviceTemplateBase.cs @@ -176,6 +176,8 @@ public abstract class MicroserviceTemplateBase : TemplateInfo steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor", null, "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Client", null, + "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor.Client")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.ProductService.Blazor", "/services/product/MyCompanyName.MyProjectName.ProductService.sln", "/services/product/src/MyCompanyName.MyProjectName.ProductService.Blazor")); @@ -221,6 +223,13 @@ public abstract class MicroserviceTemplateBase : TemplateInfo steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor", null, "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor")); + + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Client", + "/apps/blazor/MyCompanyName.MyProjectName.Blazor.sln", + "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor.Client")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Client", + null, + "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor.Client")); steps.Add(new RemoveProjectFromTyeStep("blazor")); steps.Add(new TemplateProjectRenameStep("MyCompanyName.MyProjectName.Blazor.Server", @@ -234,6 +243,8 @@ public abstract class MicroserviceTemplateBase : TemplateInfo case UiFramework.NotSpecified: steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor", null, "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Client", null, + "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor.Client")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server", null, "/apps/blazor/src/MyCompanyName.MyProjectName.Blazor.Server")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.ProductService.Blazor", diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs index 794058ad6e..5dae48a105 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs @@ -796,8 +796,8 @@ public abstract class AbpDbContext : DbContext, IAbpEfCoreDbContext, if (typeof(ISoftDelete).IsAssignableFrom(typeof(TEntity))) { - expression = e => !IsSoftDeleteFilterEnabled || !EF.Property(e, "IsDeleted"); - + var softDeleteColumnName = modelBuilder.Entity().Metadata.FindProperty(nameof(ISoftDelete.IsDeleted))?.GetColumnName() ?? "IsDeleted"; + expression = e => !IsSoftDeleteFilterEnabled || !EF.Property(e, softDeleteColumnName); if (UseDbFunction()) { expression = e => AbpEfCoreDataFilterDbFunctionMethods.SoftDeleteFilter(((ISoftDelete)e).IsDeleted, true); @@ -807,14 +807,13 @@ public abstract class AbpDbContext : DbContext, IAbpEfCoreDbContext, if (typeof(IMultiTenant).IsAssignableFrom(typeof(TEntity))) { - Expression> multiTenantFilter = e => !IsMultiTenantFilterEnabled || EF.Property(e, "TenantId") == CurrentTenantId; - + var multiTenantColumnName = modelBuilder.Entity().Metadata.FindProperty(nameof(IMultiTenant.TenantId))?.GetColumnName() ?? "TenantId"; + Expression> multiTenantFilter = e => !IsMultiTenantFilterEnabled || EF.Property(e, multiTenantColumnName) == CurrentTenantId; if (UseDbFunction()) { multiTenantFilter = e => AbpEfCoreDataFilterDbFunctionMethods.MultiTenantFilter(((IMultiTenant)e).TenantId, CurrentTenantId, true); modelBuilder.ConfigureMultiTenantDbFunction(AbpEfCoreDataFilterDbFunctionMethods.MultiTenantFilterMethodInfo, this.GetService()); } - expression = expression == null ? multiTenantFilter : QueryFilterExpressionHelper.CombineExpressions(expression, multiTenantFilter); } diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs index 0992a904ad..6841f8d504 100644 --- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs +++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs @@ -51,6 +51,8 @@ public class TestMigrationsDbContext : AbpDbContext { b.Property(x => x.LastActiveTime).ValueGeneratedOnAddOrUpdate().HasDefaultValue(DateTime.Now); b.Property(x => x.HasDefaultValue).HasDefaultValue(DateTime.Now); + b.Property(x => x.TenantId).HasColumnName("Tenant_Id"); + b.Property(x => x.IsDeleted).HasColumnName("Is_Deleted"); }); modelBuilder.Entity(b => diff --git a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs index fcaf8e5f7a..d94eb42e2f 100644 --- a/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs +++ b/framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs @@ -67,6 +67,8 @@ public class TestAppDbContext : AbpDbContext, IThirdDbContext, { b.Property(x => x.LastActiveTime).ValueGeneratedOnAddOrUpdate().HasDefaultValue(DateTime.Now); b.Property(x => x.HasDefaultValue).HasDefaultValue(DateTime.Now); + b.Property(x => x.TenantId).HasColumnName("Tenant_Id"); + b.Property(x => x.IsDeleted).HasColumnName("Is_Deleted"); }); modelBuilder diff --git a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html index 9991336bf9..606a6de12a 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html +++ b/npm/ng-packs/packages/components/extensible/src/lib/components/grid-actions/grid-actions.component.html @@ -64,6 +64,7 @@ [style]="action.btnStyle" [ngbTooltip]="action.tooltip.text | abpLocalization" [placement]="action.tooltip.placement || 'auto'" + triggers="hover" container="body" > extends Prop { export class FormPropData extends PropData { getInjected: PropData['getInjected']; - constructor(injector: Injector, public readonly record: R) { + constructor( + injector: Injector, + public readonly record: R, + ) { super(); this.getInjected = injector.get.bind(injector); diff --git a/npm/packs/datatables.net-bs5/package.json b/npm/packs/datatables.net-bs5/package.json index 03bcece395..d37ed04f99 100644 --- a/npm/packs/datatables.net-bs5/package.json +++ b/npm/packs/datatables.net-bs5/package.json @@ -6,7 +6,7 @@ }, "dependencies": { "@abp/datatables.net": "~8.2.0-rc.5", - "datatables.net-bs5": "^1.11.4" + "datatables.net-bs5": "^2.0.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431", "homepage": "https://abp.io",