diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRouteConstraint.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRouteConstraint.cs index 34887f048d..fe12bac3ff 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRouteConstraint.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRouteConstraint.cs @@ -23,11 +23,12 @@ public class AbpCultureRouteConstraint : IRouteConstraint } var languages = httpContext?.RequestServices - .GetRequiredService>().Value.Languages; + .GetService>()?.Value.Languages; if (languages == null || languages.Count == 0) { - return false; + // During URL generation, HttpContext or services may not be available. + return routeDirection == RouteDirection.UrlGeneration; } return languages.Any(l => diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRoutePagesConvention.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRoutePagesConvention.cs index c8932720bc..9410562f33 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRoutePagesConvention.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Localization/AbpCultureRoutePagesConvention.cs @@ -34,7 +34,7 @@ public class AbpCultureRoutePagesConvention : IPageRouteModelConvention AttributeRouteModel = new AttributeRouteModel { Template = AttributeRouteModel.CombineTemplates(CultureRouteTemplate, originalTemplate), - Order = 1 + Order = -1 } }); }