Activities of "sh_erfan"

  • ABP Framework version: 5.2.1
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes

Hi When GetLocalizationConfigAsync method of AbpApplicationConfigurationAppService class is called, we get tons of same localization pairs based on how many modules are loaded. This is dramatically time consuming in both api calls and page loads. problem is shown in following screen shots:

Payment module

AbpAuditLogging module

LeptonThemeManagement module:

FileManagement module

Forms module

And blah blah blah...


All these repeated and same pairs come in one response, and perhaps takes at least 20 seconds in real published scenarios. Have you considered any fix for this?

Thanks.

  • ABP Framework version: 5.2.1
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes

Hi I tried to override some methods in AbpApplicationConfigurationAppService class as follow:

public class CustomApplicationConfigurationAppService :
            AbpApplicationConfigurationAppService
        {

        public CustomApplicationConfigurationAppService(
            IOptions<AbpLocalizationOptions> localizationOptions,
            IOptions<AbpMultiTenancyOptions> multiTenancyOptions,
            IServiceProvider serviceProvider,
            IAbpAuthorizationPolicyProvider abpAuthorizationPolicyProvider,
            IPermissionDefinitionManager permissionDefinitionManager,
            DefaultAuthorizationPolicyProvider defaultAuthorizationPolicyProvider,
            IPermissionChecker permissionChecker,
            IAuthorizationService authorizationService,
            ICurrentUser currentUser,
            ISettingProvider settingProvider,
            ISettingDefinitionManager settingDefinitionManager,
            IFeatureDefinitionManager featureDefinitionManager,
            ILanguageProvider languageProvider,
            ITimezoneProvider timezoneProvider,
            IOptions<AbpClockOptions> abpClockOptions,
            ICachedObjectExtensionsDtoService cachedObjectExtensionsDtoService)
            : base(localizationOptions, multiTenancyOptions, serviceProvider, abpAuthorizationPolicyProvider,
                permissionDefinitionManager, defaultAuthorizationPolicyProvider, permissionChecker,
                authorizationService,
                currentUser, settingProvider, settingDefinitionManager, featureDefinitionManager, languageProvider,
                timezoneProvider, abpClockOptions, cachedObjectExtensionsDtoService)
        {

        }



        protected override async Task<ApplicationLocalizationConfigurationDto> GetLocalizationConfigAsync()
        {
            var localizationConfig = new ApplicationLocalizationConfigurationDto();
            return localizationConfig;
        }

    }

Add replaced using traditional style in my ApplicationModule.cs : context.Services.Replace(ServiceDescriptor.Transient<IAbpApplicationConfigurationAppService, CustomApplicationConfigurationAppService>());

when I GET /api/abp/application-configuration from swagger, the result is as expected and localization is empty: but when launching web project, the response from GET request to /Abp/ApplicationConfigurationScript contains all localization data:

Why is this happening? And what is the solution?

Hi Trying to implement DomanTenantResolver sample in my own project, everything is fine, except I cant use swagger in *HttpiApi.Host. Redirection from Identity back to api does not work. Neither with tenant available nor without tenant(host). I also tried to add OnChallenge event to JwtBearerOptions during configuration, but no success. I have no idea how to implement this. P.S: In your sample resolver, I cant event authorize with "web.getap.com:1234/swagger". In other words, api is out of reach.

Any help would be appreciated

  • ABP Framework version: 5.2.1
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • ABP Framework version: 5.2
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • Steps to reproduce the issue:"
    • Create new project,
    • Override GetProfilePictureFile method of IAccountAppService in identity server project
    • Disable MultiTenant to get profile picture of user from another tenant

This is what I have done, but still getting default profile image

[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IAccountAppService), typeof(AccountAppService),
typeof(MyAccountAppService))]
public class MyAccountAppService : AccountAppService
{
    public RecruitansAccountAppService(
    IdentityUserManager userManager,
    IAccountEmailer accountEmailer,
    IAccountPhoneService phoneService,
    IIdentityRoleRepository roleRepository,
    IdentitySecurityLogManager identitySecurityLogManager,
    IBlobContainer accountProfilePictureContainer,
    ISettingManager settingManager,
    IOptions identityOptions,
    IIdentitySecurityLogRepository securityLogRepository)
    : base(userManager, accountEmailer, phoneService, roleRepository, identitySecurityLogManager,
    accountProfilePictureContainer, settingManager, identityOptions, securityLogRepository)
    {
    }

    public override async Task&lt;IRemoteStreamContent&gt; GetProfilePictureFileAsync(Guid id)
    {
        using (DataFilter.Disable&lt;IMultiTenant&gt;())
        {
            return await base.GetProfilePictureFileAsync(id);
        }
    }
 }

Hi I have some predefined roles and seed them during migration. I want to add permissions to those roles during seed process. Docs recommend to define permission providers in Application.Contracts project, but PermissionDefenitionProvider are reflected while starting web project. I also moved them to Domain.Shared project, but not succeed. I will be glad if you give a good and standard solution for this scenario.

Showing 1 to 5 of 5 entries
Made with ❤️ on ABP v8.2.0-preview Updated on March 25, 2024, 15:11