Activities of "shreddersgr1"

I'm sorry for the mis reproduction on my part. Everything seems fine finally. It was a matter of checking all automappers. :(

This code works fine directly from the abp framework:

var entity = entry.Entity as IHasConcurrencyStamp;
if (entity == null)
{
    return;
}

Entry(entity).Property(x => x.ConcurrencyStamp).OriginalValue = entity.ConcurrencyStamp;
entity.ConcurrencyStamp = Guid.NewGuid().ToString("N");

related post that didn't help : https://abp.io/support/questions/6564/Updated-conncurrencyStamp-not-returned-on-updates

I found we can map a uInt value to track concurrency on npgsql website https://www.npgsql.org/efcore/modeling/concurrency.html?tabs=fluent-api But this is very hard to implement given the abp framework forces us to use a string for concurrency checks

  • ABP Framework version: v8.3.0
  • UI Type: Blazor WASM
  • Database System: EF Core (PostgreSQL)
  • Exception message and full stack trace: none
  • Steps to reproduce the issue:

Hello, I'm having an issue regarding concurrencychecks and Postgres.

This is the current table values:

All these values are being generated correctly on creation because of the following code in AggregateRoot.cs (which is our base class)

This method configures the ConcurrencyStamp property as a ConcurrencyToken

What this does, is that when we update an entity, we must provide the same ConcurrencyStamp as defined in the database which works perfectly. When we don't pass the good concurrencystamp it **crashes **as expected.


The problem arises when we update any entity or aggregate.

The save method does not update the concurrencystamp in the database (autosave : true or not).

It just always returns the **same **concurrencystamp everytime. (The one that was created on entity creation).

Is that a known issue with postgres. What are the recommendations?

Thanks

  • ABP Framework version: v8.1.1
  • UI Type: Blazor WASM
  • Database System: EF Core (PostgreSQL)
  • Tiered (for MVC) or Auth Server Separated (for Angular): blazor
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

Hello, We are in the process of implementing validation in the domain service layer. But we are **not **able to localize the exceptions correctly at that layer using IObjectValidator.ValidateAsync(entity)

Actually:

  • We receive localized exceptions if they are thrown from the application layer. Tags like [Required] and [StringLength] are correctly validated.
  • From the doc: Using data annotations is a simple way to implement the formal validation for a DTO in a declarative way
  • In our case, we want to use the same pattern for our entities
  • We tried to use the class ExceptionToErrorInfoConverter but it gave us a weird state where the message was translated but not the validation errors
What we wish is that the exception thrown by ABP using IObjectValidator.ValidateAsync() was localized for us.

Thanks a lot for your help.

Showing 1 to 4 of 4 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11