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
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.
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 .