NPersistence Reference Guide
Refresh the state of the instance from the database, overwriting changes made to the entity, if any, and lock it with respect to given lock mode type and with specified properties. If the lock mode type is pessimistic and the entity instance is found but cannot be locked:
  • the PessimisticLockException will be thrown if the database locking failure causes transaction-level rollback
  • the LockTimeoutException will be thrown if the database locking failure causes only statement-level rollback
If a vendor-specific property or hint is not recognized, it is silently ignored. Portable applications should not rely on the standard timeout hint. Depending on the database in use and the locking mechanisms used by the provider, the hint may or may not be observed.

Namespace: NPersistence
Assembly: NPersistence (in NPersistence.dll) Version: (


void Refresh(
	Object entity,
	LockModeType lockMode,
	Dictionary<string, Object> properties


entity instance
lock mode
Dictionary<(Of <(<'String, Object>)>)>
standard and vendor-specific properties


System..::..ArgumentException if the instance is not an entity or the entity is not managed
NPersistence..::..TransactionRequiredException if there is no transaction and if invoked on a container-managed EntityManager instance with PersistenceContextType.TRANSACTION or with a lock mode other than NONE
NPersistence..::..EntityNotFoundException if the entity no longer exists in the database
NPersistence..::..PessimisticLockException if pessimistic locking fails and the transaction is rolled back
NPersistence..::..LockTimeoutException if pessimistic locking fails and only the statement is rolled back
NPersistence..::..PersistenceException if an unsupported lock call is made

See Also