Activities of "balessi75"

Excellent, thank you. Will do.

Hi @liangshiwei

I just realized that we had an outdated override to the feature management page. Once we merged our changes into the ABP changes from 7.4.2 to 9.1.0, everything worked fine.

Thank you.

I tried creating a new blank solution using...

abp new FM.ABP -t app-pro -u blazor-server -d ef --theme lepton --mobile none -v 9.1.0

...but could not reproduce the problem. The problem only exists in our enterprise app that's been upgraded over the years from version 4 to version 9.

I see this from @maliming https://github.com/abpframework/abp/commit/376f57d6e9f6fd8308baee4dbb2d167f04d6c610

is this something he already fixed that is not available in 9.1.0? If so, please confirm what version of ABP we would need to be on to get the fix.

this is the exception logging...

2025-04-11 21:50:04.289 -04:00 [DBG] Found in the cache: pn:U,pk:790ed007-d184-51bf-db29-3a0aaf86bf76,n:FeatureManagement.ManageHostFeatures
2025-04-11 21:50:04.289 -04:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures
2025-04-11 21:50:04.289 -04:00 [DBG] Found in the cache: pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures
2025-04-11 21:50:04.467 -04:00 [WRN] Unhandled exception rendering component: Unable to evaluate index expressions of type 'PropertyExpression'.
System.InvalidOperationException: Unable to evaluate index expressions of type 'PropertyExpression'.
   at Blazorise.Utilities.ExpressionFormatter.FormatIndexArgument(Expression indexExpression, ReverseStringBuilder& builder)
   at Blazorise.Utilities.ExpressionFormatter.FormatLambda(LambdaExpression expression, String prefix)
   at Blazorise.Utilities.ExpressionFormatter.FormatLambda(LambdaExpression expression)
   at Blazorise.Select`1.GetFormatedValueExpression()
   at Blazorise.BaseInputComponent`1.get_NameAttributeValue()
   at Blazorise.Select`1.<BuildRenderTree>b__56_0(RenderTreeBuilder __builder2)
   at Microsoft.AspNetCore.Components.CascadingValue`1.Render(RenderTreeBuilder builder)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment, Exception& renderFragmentException)
2025-04-11 21:50:04.478 -04:00 [ERR] Unhandled exception in circuit 'ybKLRIpo6a39Sak0WTkrGdv-47xAMmq1QYTKZ9zB_zw'.
System.InvalidOperationException: Unable to evaluate index expressions of type 'PropertyExpression'.
   at Blazorise.Utilities.ExpressionFormatter.FormatIndexArgument(Expression indexExpression, ReverseStringBuilder& builder)
   at Blazorise.Utilities.ExpressionFormatter.FormatLambda(LambdaExpression expression, String prefix)
   at Blazorise.Utilities.ExpressionFormatter.FormatLambda(LambdaExpression expression)
   at Blazorise.Select`1.GetFormatedValueExpression()
   at Blazorise.BaseInputComponent`1.get_NameAttributeValue()
   at Blazorise.Select`1.<BuildRenderTree>b__56_0(RenderTreeBuilder __builder2)
   at Microsoft.AspNetCore.Components.CascadingValue`1.Render(RenderTreeBuilder builder)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment, Exception& renderFragmentException)

Thanks.

Hi @liangshiwei

Our solution is using Blazorise version 1.6.2 with ABP 9.1.0.

Thanks.

ABP Commercial 9.1.0 / Blazor Server / EF / Non tiered / Separate Host and Tenant DBs / Lepton Theme

Hi, after upgrading from ABP 7.4.2 to 9.1.0 we are experiencing the issue described in the following link: https://github.com/abpframework/abp/issues/20619

Any recommendations?

We were using -t app instead of -t app-pro. Only -t app-pro allows for the Lepton theme to be specified.

ABP Commercial 9.1.0 / Blazor Server / EF / Non tiered / Separate Host and Tenant DBs / Lepton Theme

In version 7.4.2, we relied on an override to AppUrlProvider to support subdomain base multi-tenancy. Our override was on the ReplacePlaceHoldersAsync method which appears to no longer be available in abp 9.1.0. Please see our override in ABP 7.4.2 and advise on how to accomplish this in ABP 9.1.0.

using JetBrains.Annotations;
using Microsoft.Extensions.Logging.Abstractions;
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Account;
using Volo.Abp.DependencyInjection;
using Volo.Abp.MultiTenancy;
using Volo.Abp.UI.Navigation.Urls;
using Microsoft.Extensions.Localization;
using Volo.Abp.Sms;
using Microsoft.Extensions.Options;
using FM.nVision.Saas;
using Volo.Abp.Features;

namespace FM.nVision.Account
{
    [Dependency(ReplaceServices = true)]
    [ExposeServices(typeof(IAppUrlProvider), typeof(AppUrlProvider), typeof(ITransientDependency))]
    [RequiresFeature(SaasConsts.nVisionFeature, SaasConsts.TimepieceFeature)]
    [RemoteService(IsEnabled = false)]
    public class nVisionAppUrlProvider : AppUrlProvider
    {
        public const string TenantSubdomainPlaceHolder = "{{subdomain}}";

        IFMTenantRepository _fmTenantRepository { get; set; }    

        public nVisionAppUrlProvider(
            IOptions<AppUrlOptions> options,
            ICurrentTenant currentTenant,
            ITenantStore tenantStore,
            IFMTenantRepository fmTenantRepository) : base(options, currentTenant, tenantStore)
        {
            _fmTenantRepository = fmTenantRepository;
        }

        protected override async Task<string> ReplacePlaceHoldersAsync(string url)
        {
            url = await base.ReplacePlaceHoldersAsync(url);

            var tenantSubdomainPlaceHolder = TenantSubdomainPlaceHolder;

            if (url.Contains(TenantSubdomainPlaceHolder + '.'))
            {
                tenantSubdomainPlaceHolder = TenantSubdomainPlaceHolder + '.';
            }

            if (url.Contains(tenantSubdomainPlaceHolder))
            {
                if (CurrentTenant.Id.HasValue)
                {
                    var subdomain = await GetCurrentTenantSubdomainAsync();
                    if (!subdomain.IsNullOrWhiteSpace()) 
                    {
                        url = url.Replace(tenantSubdomainPlaceHolder, subdomain + ".");
                    }
                    else
                    {
                        url = url.Replace(tenantSubdomainPlaceHolder, "");
                    }               
                }
                else
                {
                    url = url.Replace(tenantSubdomainPlaceHolder, "");
                }
            }

            return url;
        }

        private async Task<string> GetCurrentTenantSubdomainAsync()
        {
            if (CurrentTenant.Id.HasValue)
            {
                return await _fmTenantRepository.GetSubdomainByTenantIdAsync(CurrentTenant.Id.Value);
            }

            return string.Empty;
        }   
    }
}

Additionally, it looks like the ability to create a new solution from abp suite has been removed. Only the option to open an existing solution exists in abp suite version 9.1.

is there no way to create a solution with the lepton theme anymore? abp suite used to have the option to create a solution and chose the lepton theme (not leptonx or leptonxlite).

ABP Commercial 9.1.0 / Blazor Server / EF / Non tiered / Separate Host and Tenant DBs / Lepton Theme

Hi we are attempting to create a v7.4.2 newly templated solution so that we can compare it to version 9.1.0 and make necessary adjustments after a ABP upgrade.

The issue we are having is that we cannot seem to specify the Lepton theme in the abp new command, no matter what theme we specify, the solution gets created with the leptonxlite theme.

Our current production application uses the Lepton theme (not LeptonX or LeptonXLite). We have many custom css overrides based on the Lepton theme, so upgrading to LeptonX is not an option right now.

The command we are issuing is...

abp new ABPTemplate742 -t app -u blazor-server -d ef --theme lepton --mobile none -v 7.4.2

Please advise. Thank you in advance.

Thank you for your help maliming.

Once I cleared my cookies everything worked as expected.

Showing 1 to 10 of 266 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
Do you need assistance from an ABP expert?
Schedule a Meeting
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v9.3.0-preview. Updated on April 16, 2025, 12:13