PostSharp Model


Eliminate the INotifyPropertyChanged boilerplate and focus on business.

  • Massive code reduction.
  • Consistent and reliable implementation.
  • Customizable to your needs.

If it's repetitive, it can be automated.

Produce cleaner, shorter code

Reduce boilerplate – Go from three lines of code per property to one attribute per class. How much redundancy would you like to eliminate?

Composite properties – When a property is backed by multiple values that can change independently, you still need a notification to be raised. PostSharp does this automatically for you.

Child objects – It’s common for a property to be backed by the property of a child object. You still want a notification raised when the child property changes and we make that happen for you – automatically.

Think about tomorrow

Embrace change – Don’t fear breaking classes that implement INotifyPropertyChanged. Add, remove and change properties on classes knowing that the pattern will be taken care of for you.

Never miss a notification – Repetitive manual tasks and magic strings lead to mistakes. We eliminate boilerplate code and the mistakes that can come with it.

Do it well and consistently – Using our INotifyPropertyChanged pattern you get the best possible implementation of the pattern and it’s added consistently throughout your codebase.

Take Control

Opt out – If you don't want a property to be taken care of automatically, you can opt from automation just for this property.

Raise notifications manually – If you define an OnPropertyChanged method in your code, you are still able to invoke it manually, and PostSharp will raise all notifications through this method.

Suspend and resume – PostSharp normally buffers all events until the end of the method execution, but you can prolong or flush buffering at any time if you need to.

Key Facts

Platforms supported

.NET Framework 4.0, 4.5

Windows Phone 8, 8.1

Windows Store 8, 8.1