When I try to seed Localization data to administration microservice database I get this exception.
[09:17:53 ERR] Sequence contains more than one element
System.InvalidOperationException: Sequence contains more than one element
at System.Linq.ThrowHelper.ThrowMoreThanOneElementException()
at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found)
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at MongoDB.Driver.AsyncCursorHelper.SingleOrDefaultAsync[T](Task`1 cursorTask, CancellationToken cancellationToken)
at Volo.Abp.Domain.Repositories.MongoDB.MongoDbRepository`2.FindAsync(Expression`1 predicate, Boolean includeDetails, CancellationToken cancellationToken)
at Volo.Abp.LanguageManagement.MongoDB.MongoLocalizationResourceRecordRepository.FindAsync(String name, CancellationToken cancellationToken)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Volo.Abp.LanguageManagement.External.ExternalLocalizationSaver.LkSwGYsliR(SaveContext , LocalizationResource , String[] )
at Volo.Abp.LanguageManagement.External.ExternalLocalizationSaver.rJYwS5QxcO(SaveContext , LocalizationResource )
at Volo.Abp.LanguageManagement.External.ExternalLocalizationSaver.SaveAsync()
at Volo.Abp.LanguageManagement.External.ExternalLocalizationSaver.SaveAsync()
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync()
at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Volo.Abp.LanguageManagement.LanguageManagementDomainModule.<>c__DisplayClass6_1.dqYSTJLxrtjUOO4OmDO.MoveNext()
But if I remove AbpLocalizationResources Resource collection and Run new microservice first Data is seeded to AbpLocalizationResources and Localization works fine.
Also another issue is I am unable to overwrite localization strings for OpenIddict Module . I used this guide https://docs.abp.io/en/abp/7.0/Localization to overwrite .
Is it possible to remove Volo.Abp.Caching.StackExchangeRedis from microservices solution or any alternative implementations?. I have Implemented MondoDb cache for IDistributed cache but it seems like all core module use this package to cache all data.
I am using angular tenancy resolver with domain prefix method. I dont version my apis with that prefix just pass __tenant from angular login service to redirect URL which resolved right tenancy .
{ __tenant: this.multiTenancyService.domainTenant?.id }
One tenant is resolved I can easily resolve users login external provider. At the moment using Auth0 with Organizations. Internal users use Azure Ad.
Is there any guide how to implement it. I dont want to version all microservice API to use prefix either
I have seem people raise it on abp framework GitHub as well. Is it possible to replace or extend Extensible table components. All these components are useful to change default layout of existing abp pages and will be really helpful if we can replace or extend them somehow.
@Component({ exportAs: 'abpExtensibleTable', selector: 'abp-extensible-table', templateUrl: './extensible-table.component.html', changeDetection: ChangeDetectionStrategy.OnPush, }) export class ExtensibleTableComponent<R = any> implements OnChanges { protected _actionsText: string; @Input()
I have seen in validation exception and Business exception as well . I am unable to change message property of object returned from api.
{
"error": {
"code": null,
"message": "Your request is not valid!",
"details": "The following errors were detected during validation.\r\n - File Size cannot be bigger than 5mb\r\n",
"data": {},
"validationErrors": [
{
"message": "File Size cannot be bigger than 5mb",
"members": null
}
]
}
}
Even though I add custom message property like below its discarded and overwritten
var validations = new List<ValidationResult>() { new ValidationResult("File Size cannot be bigger than 5mb") };
throw new AbpValidationException(message: "teesting", validations);
I also tried to use business exception but same issue. Even you pass custom message which shows up on Angular UI model as title, Default error logic overwrites it. Can you please point to me to right direction how to achieve custom Angular Ui model title for each error.
I am trying to Call Saas Microservice from Other Abp Microservice and Want to use static Proxy generations. When I use Abp Cli to ceate static proxy It does not genrate Enum type under Dtos.
I get error in build as there is not type.
Below ae all the files that are generated. can you Please advice how Can I generate static client proxy for Saas Microservice. I followed yours documented approach. Another issue is if we genrate these proxy under client module then we have to inject Http.Client module to Application module.. Its blocking development, and i will appreciate your response.

"@abp/ng.theme.shared": [ "dist/packages/theme-shared/", ], "@abp/ng.theme.shared/extensions": [ "dist/packages/theme-shared/extensions/", ] then run ng build abp-ng.theme.shared the code will compile the code. Finally yarn start your app will work compiled local source code. it is just a workaround. I am looking the main reason that why it doesn't work.
I am getting exception on Delete OUs on ABP update to v7.4.0-rc.1 and still there in v7.4.0-rc.2 version. It seems something has changed regarding deleting entity.
Stack trace
ActionName Volo.Abp.Identity.OrganizationUnitController.DeleteAsync (Volo.Abp.Identity.Pro.HttpApi)
System.ArgumentException: Must contain at least 1 request. (Parameter 'requests')
at MongoDB.Driver.MongoCollectionImpl1.BulkWriteAsync(IClientSessionHandle session, IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.UsingImplicitSessionAsync[TResult](Func2 funcAsync, CancellationToken cancellationToken)
at Volo.Abp.Domain.Repositories.MongoDB.MongoDbRepository2.UpdateManyAsync(IEnumerable1 entities, Boolean autoSave, CancellationToken cancellationToken)
at Volo.Abp.Identity.MongoDB.MongoIdentityUserRepository.UpdateOrganizationAsync(Guid sourceOrganizationId, Nullable1 targetOrganizationId, CancellationToken cancellationToken) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func3 proceed) at Volo.Abp.Identity.OrganizationUnitAppService.DeleteAsync(Guid id) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Authorization.AuthorizationInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Auditing.AuditingInterceptor.ProceedByLoggingAsync(IAbpMethodInvocation invocation, AbpAuditingOptions options, IAuditingHelper auditingHelper, IAuditLogScope auditLogScope) at Volo.Abp.Auditing.AuditingInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func3 proceed) at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous(IInvocation invocation, IInvocationProceedInfo proceedInfo) at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapter.ProceedAsync() at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation) at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.
Do you have any plans or documentation around how to implement notification system like in ABP boilerplate or ASP.Net Zero https://docs.aspnetzero.com/en/aspnet-core-angular/latest/Features-Angular-Notifications https://aspnetboilerplate.com/Pages/Documents/Notification-System