Skip to content
Michael Köster edited this page Aug 7, 2021 · 6 revisions

Devexpress XAF Pessimistic Locking Example

The implementation for persistent classes is fast and easy.

Pessimistic locking example

How to implement:

  1. Add the PessimisticLocker.Module to your project.
  2. Set OptimisticLocking(false) in your class
  3. Add the IPessimisticLocking interface to your class
  4. Implement the IPessimisticLocking.Id property
  5. Run your application

Examples:

    [OptimisticLocking(false)]
    public class Contact : BaseObject, IPessimisticLocking
    {
        public string Id => Oid.ToString();
        
        public Contact(Session session)
            : base(session)
        {
        }

        private string name;
        public string Name
        {
            get { return name; }
            set { SetPropertyValue(nameof(Name), ref name, value); }
        }
    }
     
    [OptimisticLocking(false)]
    public class Company : XPObject, IPessimisticLocking
    {
        public string Id => Oid.ToString();
        
        public Company(Session session)
            : base(session)
        {
        }

        private string name;
        public string Name
        {
            get { return name; }
            set { SetPropertyValue(nameof(Name), ref name, value); }
        }
    }

Clone this wiki locally