PostSharp now fully supports .NET Core 3.1
of your .NET design patterns.
Automate your own VB/C# design patterns with
aspect-oriented programming and
control your code with architecture validation.
from your WPF and WinForms apps.
Stop writing repeating code for INotifyPropertyChanged, commands, dependency properties, contracts, undo/redo, and more.
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.
Make C# thread-safe
without using locks.
Address multithreading in C# at the right level of abstraction with
deadlock detection, and more.
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.
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..
"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?
"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.
"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!
"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!
"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.
"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.