Base solution for your next web application
Open Closed

User Preferred or Default Language #3174


User avatar
0
tteoh created

Dear Support,

Current Behavior: Whenever user select a language other than current application/tenant default language, an entry "Abp.Localization.DefaultLanguageName" will be added to AbpSettings table for the specified user.

Conversely, whenever user selec the same language as current application/tenant default language, the specified user entry will be removed.

There is an open issue in github on "user language determination" for AspNet Core but the same issue is encountered for AspNet as well: <a class="postlink" href="https://github.com/aspnetboilerplate/aspnetboilerplate/issues/2103#thread-subscription-status">https://github.com/aspnetboilerplate/as ... ion-status</a>

Q1: Will the fix apply include AspNet? Q2: If Yes, when? Q3: Possible to release a patch as I need it for current project?

Thanks, /Tommy


20 Answer(s)
  • User Avatar
    0
    tteoh created

    This is related to #3152

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    Conversely, whenever user selec the same language as current application/tenant default language, the specified user entry will be removed.

    I think related issue is not going to change this behaviour. Do you have a problem specific to this behaviour ?

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi,

    Conversely, whenever user selec the same language as current application/tenant default language, the specified user entry will be removed.

    I think related issue is not going to change this behaviour. Do you have a problem specific to this behaviour ?

    Thanks.

    It's allowing the system to always show the logged in user preferred language once set; otherwise, behave as current, using system default language.

    By default configuration, there is always a system default language. If this setting is missing then only fall back for Server's language.

    My problem is right now, regardless what language the user has selected, it will be reset at next login or using another device/computer.

    Thanks. /tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @tteoh,

    Thanks for the clarification :). This issue is going to fix your problem but it will be probably ready for next week.

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi @tteoh,

    Thanks for the clarification :). This issue is going to fix your problem but it will be probably ready for next week.

    Thanks.

    Really look forward to that. Wonder how the release will be normally informed to the community, is it through normal mailer list?

    Thanks.

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    For AspNet Zero customers, we mostly release AspNet Zero and ABP together, so you will get an email. For others, they need to follow ABP on github to receive an email.

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi,

    For AspNet Zero customers, we mostly release AspNet Zero and ABP together, so you will get an email. For others, they need to follow ABP on github to receive an email.

    Thanks.

    Thank you and look forward to the new release notification.

    /tommy

  • User Avatar
    0
    tteoh created

    Dear Support,

    Any target release date set?

    Thanks, /Tommy

    <cite>tteoh: </cite>

    <cite>ismcagdas: </cite> Hi,

    For AspNet Zero customers, we mostly release AspNet Zero and ABP together, so you will get an email. For others, they need to follow ABP on github to receive an email.

    Thanks.

    Thank you and look forward to the new release notification.

    /tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    For AspNet Zero probalby in next two weeks. But ABP has a prerelease package and probably it will be released next week. You can upgrade your ABP packages to v2.1.0-beta4 and see if your problem is fixed.

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi,

    For AspNet Zero probalby in next two weeks. But ABP has a prerelease package and probably it will be released next week. You can upgrade your ABP packages to v2.1.0-beta4 and see if your problem is fixed.

    Thanks.

    Hi, I'm very new to ABP and .Net, appreciate if you could advice the upgrade steps or point me to the right documentation.

    Thanks. /Tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    You just need to upgrade nuget packages (Abp.* packages). After that, you need to follow changes in both releases <a class="postlink" href="https://github.com/aspnetboilerplate/aspnetboilerplate/releases">https://github.com/aspnetboilerplate/as ... e/releases</a> and <a class="postlink" href="https://github.com/aspnetboilerplate/module-zero/releases">https://github.com/aspnetboilerplate/mo ... o/releases</a>

    We don't have a documentation for this but, if you have any problems during upgrade, we can try to help.

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi,

    For AspNet Zero probalby in next two weeks. But ABP has a prerelease package and probably it will be released next week. You can upgrade your ABP packages to v2.1.0-beta4 and see if your problem is fixed.

    Thanks.

    Dear Support,

    May I know what's the steps to upgrade to ABP v2.1? I will be doing this for the "first-time". Appreciate your guidance.

    Thanks. /Tommy

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi,

    You just need to upgrade nuget packages (Abp.* packages). After that, you need to follow changes in both releases <a class="postlink" href="https://github.com/aspnetboilerplate/aspnetboilerplate/releases">https://github.com/aspnetboilerplate/as ... e/releases</a> and <a class="postlink" href="https://github.com/aspnetboilerplate/module-zero/releases">https://github.com/aspnetboilerplate/mo ... o/releases</a>

    We don't have a documentation for this but, if you have any problems during upgrade, we can try to help.

    Thanks.

    Hi Support,

    Currently, I am using AspNetZero project template and had made changes to the codes. The link provided include both abp and modulezero, do I need to update both or just abp?

    I do need your help on how to upgrade the new releases coz I don't even have an idea where to start.

    Thanks. /Tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @tteoh,

    In order to solve only this problem, you just need to upgrade all nuget packages which starts with Abp.*. We will be happy to help if you face any problems.

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>ismcagdas: </cite> Hi @tteoh,

    In order to solve only this problem, you just need to upgrade all nuget packages which starts with Abp.*. We will be happy to help if you face any problems.

    Thanks.

    Hi, I really "clueless" on how to "upgrade all nugget packages which starts with Abp.*" in Visual Studio. Thanks in advance.

    /Tommy

  • User Avatar
    0
    tteoh created

    <cite>tteoh: </cite>

    <cite>ismcagdas: </cite> Hi @tteoh,

    In order to solve only this problem, you just need to upgrade all nuget packages which starts with Abp.*. We will be happy to help if you face any problems.

    Thanks.

    Hi, I really "clueless" on how to "upgrade all nugget packages which starts with Abp.*" in Visual Studio. Thanks in advance.

    /Tommy

    Dear Support,

    I have managed to upgrade the abp nugget packages following this link: <a class="postlink" href="https://docs.microsoft.com/en-us/nuget/tools/package-manager-ui">https://docs.microsoft.com/en-us/nuget/ ... manager-ui</a>

    However, I encountered the following error when reached:

    • Abp.Zero
    • Abp.Zero.Common (dependent package)

    I realized Abp.Zero.Common is a new package that was not installed on version 1.5.0.

    When I attempt to compile the solution, I hit the following error:

    1>------ Rebuild All started: Project: OUD.Core, Configuration: Debug Any CPU ------
    1>  Restoring NuGet packages...
    1>  To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
    1>  All packages listed in packages.config are already installed.
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,48,8,86): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,18,8,45): error CS0311: The type 'OUD.MultiTenancy.Tenant' cannot be used as type parameter 'TTenant' in the generic type or method 'LdapAuthenticationSource<TTenant, TUser>'. There is no implicit reference conversion from 'OUD.MultiTenancy.Tenant' to 'Abp.MultiTenancy.AbpTenant<OUD.Authorization.Users.User>'.
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,18,8,45): error CS7069: Reference to type 'AbpTenant<>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(10,44,10,57): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(10,68,10,92): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\PermissionChecker.cs(11,38,11,75): error CS0308: The non-generic type 'PermissionChecker' cannot be used with type arguments
    

    Opening the cs file "C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\PermissionChecker.cs":

    using Abp.Authorization;
    using OUD.Authorization.Roles;
    using OUD.Authorization.Users;
    using OUD.MultiTenancy;
    
    namespace OUD.Authorization
    {
        /// <summary>
        /// Implements <see cref="PermissionChecker"/>.
        /// </summary>
        public class PermissionChecker : PermissionChecker<Tenant, Role, User>
        {
            public PermissionChecker(UserManager userManager)
                : base(userManager)
            {
    
            }
        }
    }
    

    The "using Abp.Authorization" is no longer referenced.

    Please help. /Tommy

  • User Avatar
    0
    tteoh created

    <cite>tteoh: </cite>

    <cite>tteoh: </cite> <cite>ismcagdas: </cite> Hi @tteoh,

    In order to solve only this problem, you just need to upgrade all nuget packages which starts with Abp.*. We will be happy to help if you face any problems.

    Thanks.

    Hi, I really "clueless" on how to "upgrade all nugget packages which starts with Abp.*" in Visual Studio. Thanks in advance.

    /Tommy

    Dear Support,

    I have managed to upgrade the abp nugget packages following this link: <a class="postlink" href="https://docs.microsoft.com/en-us/nuget/tools/package-manager-ui">https://docs.microsoft.com/en-us/nuget/ ... manager-ui</a>

    However, I encountered the following error when reached:

    • Abp.Zero
    • Abp.Zero.Common (dependent package)

    I realized Abp.Zero.Common is a new package that was not installed on version 1.5.0.

    When I attempt to compile the solution, I hit the following error:

    1>------ Rebuild All started: Project: OUD.Core, Configuration: Debug Any CPU ------
    1>  Restoring NuGet packages...
    1>  To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
    1>  All packages listed in packages.config are already installed.
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,48,8,86): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,18,8,45): error CS0311: The type 'OUD.MultiTenancy.Tenant' cannot be used as type parameter 'TTenant' in the generic type or method 'LdapAuthenticationSource<TTenant, TUser>'. There is no implicit reference conversion from 'OUD.MultiTenancy.Tenant' to 'Abp.MultiTenancy.AbpTenant<OUD.Authorization.Users.User>'.
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(8,18,8,45): error CS7069: Reference to type 'AbpTenant<>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(10,44,10,57): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\Ldap\AppLdapAuthenticationSource.cs(10,68,10,92): error CS7069: Reference to type 'DefaultExternalAuthenticationSource<,>' claims it is defined in 'Abp.Zero', but it could not be found
    1>C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\PermissionChecker.cs(11,38,11,75): error CS0308: The non-generic type 'PermissionChecker' cannot be used with type arguments
    

    Opening the cs file "C:\Users\Admin\Source\Workspaces\OUD\OUD\OUD.Core\Authorization\PermissionChecker.cs":

    using Abp.Authorization;
    using OUD.Authorization.Roles;
    using OUD.Authorization.Users;
    using OUD.MultiTenancy;
    
    namespace OUD.Authorization
    {
       /// <summary>
       /// Implements <see cref="PermissionChecker"/>.
       /// </summary>
       public class PermissionChecker : PermissionChecker<Tenant, Role, User>
       {
           public PermissionChecker(UserManager userManager)
               : base(userManager)
           {
    
           }
       }
    }
    

    The "using Abp.Authorization" is no longer referenced.

    Please help. /Tommy

    Dear Support,

    Managed to resolve the compilation issue pertaining to above based on the link below: <a class="postlink" href="https://github.com/aspnetboilerplate/module-zero/issues/380">https://github.com/aspnetboilerplate/mo ... issues/380</a>

    Thanks. /Tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @tteoh,

    Sorry for my late response, did you managed to solve your actual problem about language ?

    Thanks.

  • User Avatar
    0
    tteoh created

    <cite>tteoh: </cite>

    <cite>ismcagdas: </cite> Hi,

    Conversely, whenever user selec the same language as current application/tenant default language, the specified user entry will be removed.

    I think related issue is not going to change this behaviour. Do you have a problem specific to this behaviour ?

    Thanks.

    It's allowing the system to always show the logged in user preferred language once set; otherwise, behave as current, using system default language.

    By default configuration, there is always a system default language. If this setting is missing then only fall back for Server's language.

    My problem is right now, regardless what language the user has selected, it will be reset at next login or using another device/computer.

    Thanks. /tommy

    Hi Support,

    The upgrade was for AspNetZero Template v3.2 from ABP v1.5.0 to v2.1.3. It was only successful after making some changes to the AspNetZero template codes.

    I conducted the test by creating User1 and User2 with different language set as preference. Validated AbpSettings table on records were created. However, the test result is 'negative'. After logged out and login again, the system DOES NOT show the user preferred language.

    With reference to the link below, I am using MVC5+AJ1 and it appears this fix is not relevant to my issue as you mentioned previously. Correct? <a class="postlink" href="https://github.com/aspnetboilerplate/aspnetboilerplate/issues/2162">https://github.com/aspnetboilerplate/as ... ssues/2162</a>

    Thanks. /Tommy

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    Yes, we will develop same future for MVC 5.x in the next release of ABP.

    Thanks.