If it's repetitive, it can be automated

with PostSharp – the #1 pattern-aware compiler extension for C# and VB.

  • Get done quicker with less development effort.
  • Deliver more reliable software with fewer defects and more *bilities.
  • Write cleaner code that is easier to maintain after the first release.
  • Enforce consistent coding practices across the team.

PostSharp now fully supports .NET Core 3.1


PostSharp Framework

Automate implementation
of your .NET design patterns.

Automate your own VB/C# design patterns with
aspect-oriented programming and
control your code with architecture validation.

learn more

PostSharp MVVM

Remove boilerplate
from your WPF and WinForms apps.

Stop writing repeating code for INotifyPropertyChanged, commands, dependency properties, contracts, undo/redo, and more.

learn more

PostSharp Logging

Log your C# code
without cluttering your codebase.

Add extensive logging to your C# application
in minutes and direct it to any .NET logging framework.
Your way, faster than hand-written code.

learn more

PostSharp Threading

Make C# thread-safe
without using locks.

Address multithreading in C# at the right level of abstraction with threading models,
deadlock detection, and more.

learn more

PostSharp Caching

Cache C# methods
with just a simple custom attribute.

Add caching to an existing method with just a custom attribute. Works with Redis, MemoryCache, and your custom cache framework.

learn more

PostSharp Essentials

A free edition of PostSharp
to start your rebellion against boilerplate.

Limited to 10 enhanced classes per project,
plus PostSharp Logging Developer Edition
with no project-size limitation..

learn more

Over 50,000 satisfied users.

"PostSharp is a pretty amazing piece of software."

Stay DRY with aspect oriented programming by injecting repetitive code directly into your application. Abstractions like AOP are the whole point of what the computer is supposed to do for us, work that’s not fun, like logging and transactions. So why not hide that?

Scott Hanselman
Principal Program Manager
"PostSharp should be part of every C# developers' toolset."

PostSharp is amazing! If you are not using it, you should! The amount of code that can be reduced in logging alone is worth the price! I believe that PostSharp should be part of EVERY C# developers toolset.

Eric Ziko
System Programmer
Wells Fargo
"Working declaratively is a dream!"

PostSharp is the best way to implement cross-cutting functionalities in a very elegant and efficient way. And when you want to enforce some design rules in your code, working declaratively is a dream!

Pierre-Emmanuel Dautreppe
.NET Architect
Thales Information Systems
"PostSharp simplicity is simply amazing."

PostSharp rocks! And I mean that as someone who is doing AOP for a long while, and has implemented some not insignificant parts of Castle.DynamicProxy. Leaving aside the amount of power that it gives you, PostSharp simplicity is simply amazing, wow!

Oren Eini
"It has reduced thousands of lines of code."

PostSharp was especially good when we had to embed applications and needed to transfer data between them. We would have had to write a lot of code if not for just one aspect and now we don’t even think about it. It’s made life a lot easier from a development point of view.

Kshitij Deshmukh
Software Development Manager
Mitchell International
"PostSharp is very easy to use."

Releasing developers from writing boilerplate or infrastructure code helps my team to complete features faster. We definitely save coding time with PostSharp. We’re relieved from writing INotifyPropertyChanged and creating ICommand properties needed for data binding.

Bernd Hengelein
Software Architect
Siemens Audiology