Browse Source

Merge pull request #18908 from abpframework/maliming-patch-3

Update Concurrency-Check.md
pull/18912/head
Berkan Sasmaz 2 years ago
committed by GitHub
parent
commit
039451bfb2
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 10
      docs/en/Concurrency-Check.md

10
docs/en/Concurrency-Check.md

@ -29,6 +29,8 @@ public interface IHasConcurrencyStamp
* While a new record is **creating**, if the entity implements the `IHasConcurrencyStamp` interface, ABP Framework automatically sets a unique value to the **ConcurrencyStamp** property.
* While a record is **updating**, ABP Framework compares the **ConcurrencyStamp** property of the entity with the provided **ConcurrencyStamp** value by the user and if the values match, it automatically updates the **ConcurrencyStamp** property with the new unique value. If there is a mismatch, `AbpDbConcurrencyException` is thrown.
> If there is a unit of work, you need to call the [SaveChangesAsync](./Unit-Of-Work.md#savechangesasync) method to get the generated `ConcurrencyStamp` when creating or updating.
**Example: Applying Concurrency Control for the Book Entity**
Implement the `IHasConcurrencyStamp` interface for your entity:
@ -74,8 +76,8 @@ public class BookAppService : ApplicationService, IBookAppService
book.ConcurrencyStamp = input.ConcurrencyStamp;
//set other input values to the entity ...
await BookRepository.UpdateAsync(book);
//use autoSave: true to get the latest ConcurrencyStamp
await BookRepository.UpdateAsync(book, autoSave: true);
}
}
```
@ -134,8 +136,8 @@ public class BookAppService : ApplicationService, IBookAppService
book.ConcurrencyStamp = input.ConcurrencyStamp;
//set other input values to the entity ...
await BookRepository.UpdateAsync(book);
//use autoSave: true to get the latest ConcurrencyStamp
await BookRepository.UpdateAsync(book, autoSave: true);
}
}
```

Loading…
Cancel
Save