hi @uxabp,
Can you try the code below?
The program works, thank you.
Hi @uxabp,
Could you share your project with [email protected]?
Hi @m.aliozkaya,
Due to the project involving the company's internal business secrets, I am unable to share it. However, I can explain the components I used. Since the development needs to continue, I have reverted to the old version for now.
ABP Zero (with GitHub dev 2024/7/12) Core MVC & jQuery Project DevExpress 24.1.3 using Html.DevExtreme().DataGrid
Code
[DontWrapResult(WrapOnError = true, WrapOnSuccess = false, LogError = true)]
[HttpGet]
public async Task<JsonResult> GetAll(DataSourceLoadOptions loadOptions)
{
var dataQuery = _metricsProxyRepository.GetAll();
dataQuery = dataQuery.WhereIf(!await _commonDomainService.IsCurrentUserInRoleAsync(AbpRoles.Role_Admin), x => x.CreatorUserId == _session.GetUserId());
var result = await DataSourceLoader.LoadAsync(dataQuery, loadOptions); //HERE ABP v9.3.0 Error
if (loadOptions.Group == null)
{
result.data = ObjectMapper.Map<List<DevCarDto>>(result.data);
}
return new JsonResult(result, JsonSerializerOptionsCollection.DefaultOptions);
}
ABP v9.2.2 was working fine, but after upgrading to ABP v9.3.0, the same program started having errors(see //HERE ABP v9.3.0 Error).
Using Abp.ZeroCore.EntityFrameworkCore v9.3.0 ERROR Message:
Async operations for the LINQ provider 'Abp.EntityFrameworkCore.AbpEntityQueryProvider' are not supported.
You can implement a custom async adapter (DevExtreme.AspNet.Data.Async.IAsyncAdapter) and register it via 'DevExtreme.AspNet.Data.Async.CustomAsyncAdapters.RegisterAdapter'.
I estimate that users of DevExpress will be affected. It would be great if you could help. Regardless, thank you for response.
When I was using Abp.ZeroCore.EntityFrameworkCore v9.2.2, everything worked fine, but after upgrading to ABP Zero v13.3.0 (rel) (Abp.ZeroCore.EntityFrameworkCore v9.3.0), the same program started encountering errors.
my code:
var dataQuery = _keyValueBucketRepository.GetAll();
dataQuery.WhereIf(!await _commonFunctionManager.IsCurrentUserInRoleAsync(AbpRoles.Role_Admin), x => x.CreatorUserId == _session.GetUserId());
var result = await DataSourceLoader.LoadAsync(dataQuery, loadOptions); // this line failed
error result
ERROR 2024-08-05 15:13:39,300 [10 ] Mvc.ExceptionHandling.AbpExceptionFilter - Async operations for the LINQ provider 'Abp.EntityFrameworkCore.AbpEntityQueryProvider' are not supported. You can implement a custom async adapter (DevExtreme.AspNet.Data.Async.IAsyncAdapter) and register it via 'DevExtreme.AspNet.Data.Async.CustomAsyncAdapters.RegisterAdapter'.
System.NotSupportedException: Async operations for the LINQ provider 'Abp.EntityFrameworkCore.AbpEntityQueryProvider' are not supported. You can implement a custom async adapter (DevExtreme.AspNet.Data.Async.IAsyncAdapter) and register it via 'DevExtreme.AspNet.Data.Async.CustomAsyncAdapters.RegisterAdapter'.at DevExtreme.AspNet.Data.ExpressionExecutor.CreateAsyncAdapter()at DevExtreme.AspNet.Data.ExpressionExecutor.ToEnumerableAsyncTat DevExtreme.AspNet.Data.DataSourceLoaderImpl1.ExecExprAsync[R](Expression expr) at DevExtreme.AspNet.Data.DataSourceLoaderImpl1.LoadAsync()at MyCompanyName.AbpZeroTemplate.ProjectExtension.DevAppServices.DevSftpManagersAppService.GetAll(DataSourceLoadOptions loadOptions) in C:\ABP\MikroTikBackupManager\aspnet-core\src\MyCompanyName.AbpZeroTemplate.Application\ProjectExtension\DevAppServices\DevSftpManagersAppService.cs:line 106at lambda_method3306(Closure, Object)at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Logged|12_1(ControllerActionInvoker invoker)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
If I purchase abp.io commercial, can I get the complete source code on github?
Can Microservice use abp cli to generate templates?
Hi @ismcagdas,
If modify the client code, the next time use power tools to generate it again, the client code will be overwritten.
Is there a way to not change the code generated by power tools, override the generated method?
Here power tools generate service code.
[AbpAuthorize(AppPermissions.Pages_CustomizeApiKeies)]
public class CustomizeApiKeiesAppService : AbpZeroTemplateAppServiceBase, ICustomizeApiKeiesAppService
{
private readonly IRepository<CustomizeApiKey> _customizeApiKeyRepository;
private readonly IRepository<User,long> _lookup_userRepository;
public CustomizeApiKeiesAppService(IRepository<CustomizeApiKey> customizeApiKeyRepository , IRepository<User, long> lookup_userRepository)
{
_customizeApiKeyRepository = customizeApiKeyRepository;
_lookup_userRepository = lookup_userRepository;
}
........
[AbpAuthorize(AppPermissions.Pages_CustomizeApiKeies_Create)]
protected virtual async Task Create(CreateOrEditCustomizeApiKeyDto input)
{
var customizeApiKey = ObjectMapper.Map<CustomizeApiKey>(input);
if (AbpSession.TenantId != null)
{
customizeApiKey.TenantId = (int?) AbpSession.TenantId;
}
await _customizeApiKeyRepository.InsertAsync(customizeApiKey);
}
...........
}
I want to override Create method, but not working. still run CustomizeApiKeiesAppService. Here is my code.
public class CustomizeApiKeiesAppServiceCustom : CustomizeApiKeiesAppService
{
private readonly IRepository<CustomizeApiKey> _customizeApiKeyRepository;
private readonly IRepository<User, long> _lookup_userRepository;
public CustomizeApiKeiesAppServiceCustom(IRepository<CustomizeApiKey> customizeApiKeyRepository, IRepository<User, long> lookup_userRepository)
: base (customizeApiKeyRepository, lookup_userRepository)
{
_customizeApiKeyRepository = customizeApiKeyRepository;
_lookup_userRepository = lookup_userRepository;
}
[AbpAuthorize(AppPermissions.Pages_CustomizeApiKeies_Create)]
protected override async Task Create(CreateOrEditCustomizeApiKeyDto input)
{
var customizeApiKey = ObjectMapper.Map<CustomizeApiKey>(input);
DoSomething();
await _customizeApiKeyRepository.InsertAsync(customizeApiKey);
}
..........
}
and PreInitialize()
public override void PreInitialize()
{
Configuration.ReplaceService<ICustomizeApiKeiesAppService, CustomizeApiKeiesAppServiceCustom>();
}
Not working.
Help me, please.
It's worked, thanks.
Can asp.net zero v7.1.0 (.net Core 2.2 + Angular8) be executed on ubuntu 16.0.4?
Is there any relevant documents for reference?