Activities of "papusa"

Thanks!

Hello,

I've encountered another issue with entity extension regarding UI localization. Here's the code I'm working with: property.DisplayName = new FixedLocalizableString("Label:BirthDate"); The label translates correctly in the "Create" and "Edit" forms, but it doesn't translate in the table headers. When I add :: before the localization key, the label is correctly translated in the table headers, but the "Create/Edit" forms show an empty string instead.

Could you please assist with resolving this?

Thanks. Any ideas when it can be fixed?

It didn't work. I believe the issue is not related to the EF type, as the migration already has the correct SQL type. It seems to be caused by a deserialization or mapping step in the pipeline. Since extra property values are stored as Object, it could be a boxing issue. When replacing IdentityUserAppService, I noticed that the BirthDate property is stored as DateTime instead of DateOnly. Additionally, the response includes a time part, which suggests unintended type conversion. Request:

{
 "extraProperties": {
   "NationalIdentityNumber": "12345678901",
   "BirthDate": "2001-03-27" <--- no time
 },
 "userName": "test",
 "name": "test",
 "surname": "test",
 "password": "test123",
 "email": "test@test",
 "phoneNumber": "",
 "isActive": true,
 "lockoutEnabled": true,
 "emailConfirmed": false,
 "phoneNumberConfirmed": false,
 "shouldChangePasswordOnNextLogin": false,
 "roleNames": [],
 "organizationUnitIds": []
}

Response:

{
    "tenantId": null,
    "userName": "test",
    "email": "test@test",
    "name": "test",
    "surname": "test",
    "emailConfirmed": false,
    "phoneNumber": "",
    "phoneNumberConfirmed": false,
    "supportTwoFactor": false,
    "twoFactorEnabled": false,
    "isActive": true,
    "lockoutEnabled": true,
    "isLockedOut": false,
    "lockoutEnd": null,
    "shouldChangePasswordOnNextLogin": false,
    "concurrencyStamp": "6d0c02c007114cfa8a6eb816bd9f277c",
    "roleNames": null,
    "accessFailedCount": 0,
    "lastPasswordChangeTime": "2025-03-27T07:16:52.8335677+00:00",
    "isExternal": false,
    "isDeleted": false,
    "deleterId": null,
    "deletionTime": null,
    "lastModificationTime": null,
    "lastModifierId": null,
    "creationTime": "2025-03-27T09:16:52.8579278+02:00",
    "creatorId": "519c6b51-3e6f-8cb8-cade-3a17de0dafb7",
    "id": "51e457a2-1a1e-5930-a2d4-3a18e8a2d980",
    "extraProperties": {
        "BirthDate": "2001-03-27T00:00:00", <---- time added
        "NationalIdentityNumber": "12345678901"
    }
}

This is how I see the problem:

  1. Incorrect type casting in the pipeline.
  2. The date is not saved in the database due to the wrong type, but no error is thrown; instead, a default value is set.
  3. The response includes the user’s input, but time is added to date.

Btw, on UI date input is a simple text input, not a date picker.

Hi! I need to add a couple of extra properties to the IdentityUser. One of these properties will represent the date of birth, and I would like its type to be DateOnly.


Below is my current code: EfCoreEntityExtensionMappings

            ObjectExtensionManager.Instance.MapEfCoreProperty<IdentityUser, string>(
                UserExtraPropertyNames.NationalIdentityNumber,
                (_, propertyBuilder) =>
                {
                    propertyBuilder.IsRequired();
                    propertyBuilder.HasColumnType("varchar(11)");
                });

            ObjectExtensionManager.Instance.MapEfCoreProperty<IdentityUser, DateOnly>(
                UserExtraPropertyNames.BirthDate,
                (_, propertyBuilder) =>
                {
                    propertyBuilder.IsRequired();
                });

ExtensionConfigurator

ObjectExtensionManager.Instance.Modules().ConfigureIdentity(identity =>
        {
            identity.ConfigureUser(user =>
            {
                user.AddOrUpdateProperty<string>(UserExtraPropertyNames.NationalIdentityNumber, property =>
                {
                    property.Attributes.Add(new RequiredAttribute());
                    property.Attributes.Add(new StringLengthAttribute(11) { MinimumLength = 11 });
                });
                
                user.AddOrUpdateProperty<DateOnly>(UserExtraPropertyNames.BirthDate, property =>
                {
                    property.DefaultValueFactory = () => DateOnly.FromDateTime(DateTime.Today);
                    
                    property.Validators.Add(context =>
                    {
                        
                    });
                });
            });
        });


The BirthDate property is never set and always has the default value of 0001-01-01 when a new user is created. I believe the issue is related to type casting. The BirthDate property has a DateTime type instead of DateOnly, which might be causing the problem.

Do you have any suggestions on how I can fix this?

Thanks!

Question

Hangfire jobs attribute [AutomaticRetry] doesn't work. Is there any way to use ABP background jobs abstractions and have different retry setup for different jobs?

Thanks.

Hi,

We have a requirement to add some additional tab to user edit modal (see screenshot below):

Is there any possibility to customise it without replacing entire users component?

Thanks.

  • ABP Framework version: v6.0.1
  • UI type: Angular /

Hi,

Thanks, workaround works. Are you going to include fix for this in next ABP releases?

Hey, any news?

Hello,

It was fixed with this pr. I will try reproduce the problem again

Hi,

Unfortunately, we still have the issue. It disappeared for a while, but after lates updates it's back :( Even previously suggested workaround doesn't help anymore.

Did you reproduce the problem? Do you need any additional information?

Showing 31 to 40 of 48 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.2.0-preview. Updated on February 02, 2026, 07:17
1
ABP Assistant
🔐 You need to be logged in to use the chatbot. Please log in first.