diff --git a/docs/en/Tutorials/Todo/Single-Layer/Index.md b/docs/en/Tutorials/Todo/Single-Layer/Index.md index 6c0bcc7055..b04080e635 100644 --- a/docs/en/Tutorials/Todo/Single-Layer/Index.md +++ b/docs/en/Tutorials/Todo/Single-Layer/Index.md @@ -327,8 +327,8 @@ public interface ITodoAppService : IApplicationService Create a `TodoAppService` class under the `Services` folder of {{if UI=="Blazor"}}your `TodoApp.Host` project{{else}}your project{{end}}, as shown below: ```csharp -{{if UI=="Blazor"}} using TodoApp.Services; +{{if UI=="Blazor"}} using TodoApp.Services.Dtos; using TodoApp.Entities; using Volo.Abp.Application.Services; @@ -341,7 +341,7 @@ using Volo.Abp.Domain.Repositories; namespace TodoApp.Services; -public class TodoAppService : ApplicationService{{if UI=="Blazor"}}, ITodoAppService{{end}} +public class TodoAppService : TodoAppAppService{{if UI=="Blazor"}}, ITodoAppService{{end}} { private readonly IRepository _todoItemRepository; @@ -354,7 +354,7 @@ public class TodoAppService : ApplicationService{{if UI=="Blazor"}}, ITodoAppSer } ``` -This class inherits from the `ApplicationService` class of the ABP Framework and implements our use-cases. ABP provides default generic [repositories](../../../Repositories.md) for the entities. We can use them to perform the fundamental database operations. This class [injects](../../../Dependency-Injection.md) `IRepository`, which is the default repository for the `TodoItem` entity. We will use it to implement our use cases. +This class inherits from the `TodoAppAppService`, which inherits from the `ApplicationService` class of the ABP Framework and implements our use-cases. ABP provides default generic [repositories](../../../Repositories.md) for the entities. We can use them to perform the fundamental database operations. This class [injects](../../../Dependency-Injection.md) `IRepository`, which is the default repository for the `TodoItem` entity. We will use it to implement our use cases. #### Getting the Todo Items diff --git a/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs b/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs index 58867d6e5d..a70c93f3ac 100644 --- a/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs +++ b/framework/src/Volo.Abp.BlazoriseUI/AbpCrudPageBase.cs @@ -306,10 +306,12 @@ public abstract class AbpCrudPageBase< protected virtual async Task SearchEntitiesAsync() { + var currentPage = CurrentPage; CurrentPage = 1; - - await GetEntitiesAsync(); - + if (currentPage == 1) + { + await GetEntitiesAsync(); + } await InvokeAsync(StateHasChanged); } @@ -596,12 +598,12 @@ public abstract class AbpCrudPageBase< await SetEntityActionsAsync(); } - + protected virtual ValueTask SetEntityActionsAsync() { return ValueTask.CompletedTask; } - + private async ValueTask TrySetTableColumnsAsync() { if (IsDisposed) @@ -614,7 +616,7 @@ public abstract class AbpCrudPageBase< protected virtual ValueTask SetTableColumnsAsync() { - + return ValueTask.CompletedTask; } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Services/MyProjectNameAppService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Services/MyProjectNameAppService.cs new file mode 100644 index 0000000000..c211c514ac --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Services/MyProjectNameAppService.cs @@ -0,0 +1,13 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Application.Services; + +namespace MyCompanyName.MyProjectName.Services; + +/* Inherit your application services from this class. */ +public abstract class MyProjectNameAppService : ApplicationService +{ + protected MyProjectNameAppService() + { + LocalizationResource = typeof(MyProjectNameResource); + } +} \ No newline at end of file