PostSharp Technologies is pleased to announce the release of PostSharp 4.1, the latest version of the #1 compiler extension for .NET, adding support for design patterns and thread safety to C# and Visual Basic.

PostSharp 4.1 focuses on extending the set of supporting platforms by adding Xamarin (both iOS and Android), Visual Studio 2015, Visual Studio Universal Apps to the list of compatible products, and by improving the level of support of Windows 8 and Windows Phone. PostSharp 4.1 will also support new minor platform updates automatically, without requiring any update of PostSharp itself.

Xamarin Support

This is definitively our biggest headline. PostSharp 4.1 now supports Xamarin at the same level of feature as Windows Phone or Windows Store. Excepted the diagnostics pattern library, all PostSharp features are now strictly cross-platform and have been tested on several physical devices.

PostSharp 4.1 is an excellent choice to build large and complex applications for mobile devices and will deliver the same economies of scale as for desktop or server applications, possible saving thousands of lines of codes and hundreds of defects.

Note that Xamarin Studio is not supported. You must build your application on Windows using Visual Studio in order to use PostSharp with Xamarin.

There’s no specific tutorial on how to use PostSharp with Xamarin. It just works as usually: open your project in Visual Studio, move your caret on a class and add an aspect from the smart tag (in VS 2013) or light bulb (in 2015).

Visual Studio 2015 Support

PostSharp Tools have been fully rewritten to take advantage of the new architecture of Visual Studio 2015.

Improvements include:

  • Light bulbs are used instead of the smart tags: not only it looks better, but it also better integrates with other vendors such as Microsoft, Resharper or CodeRush.
  • Real-time code analysis detects the most common errors in seconds so you don’t even have to recompile.
  • Real-time coding guidance shows you what’s the next step to implement more complex patterns like threading models or undo/redo.
  • More accurate parsing of C# code, resulting in higher reliability of PostSharp editor integration.

PostSharp Tools Improvements

Besides VS 2015 support, PostSharp 4.1 includes other significant improvements in the tooling for Visual Studio:

  • Universal apps, the marketing name for shared projects, are now properly supported.
  • PostSharp Explorer is now much more usable and accurate than before.
  • Conservative NuGet Versioning prevents unwanted updates of your NuGet packages. PostSharp will always try to match the version that you’re already using in your solution and will politely ask if an update is needed.

Other Improvements

  • Windows Phone Get Threading. Additionally to Xamarin, PostSharp Threading Pattern Library now becomes available for Windows and Windows Phone (both Silverlight and WinRT), so you can build apps that are both thread-safe and cross-platform.
  • Code Contracts Localization. You can now customize the text of exception messages. Please see the documentation for details.
  • No Strong-Name Verification at build-time. It does not affect strong names at run-time.
  • Automatic support of minor platform updates. Minor updates (like from 4.5 to 4.5.1) should now be automatically supported without any PostSharp update.


PostSharp 4.1 is all about new platforms. With complete support for Windows Phone, Android and iOS, you can leverage the boilerplate-cutting power of PostSharp to your mobile applications. And we proved we’re ready for Visual Studio 2015, with exciting new features that will improve your productivity.

Happy PostSharping!



It’s hot from the oven! Just this quick post to announce that PostSharp 4.1 RC is out. You can download it from NuGet (make sure to enable pre-releases) or from our web site.

I’ll not completely repeat the previous announcements, but here is a short list of the main features:

    • Xamarin Support, now at the same level of functionality and testing as Windows Phone. It lets you use PostSharp to build applications that target iOS and Android, additionally to Windows, Windows Phone, and Windows 8.
    • Visual Studio 2015 Support, including light bulb integration, live code diagnostics and coding guidance, makes it easier to get started with PostSharp, and then assists you in more complex tasks.
    • Conservative NuGet Versioning prevents unwanted upgrades of PostSharp packages.
    • PostSharp Explorer Improvements let you see where aspects are being used in your code.
    • Shared Projects Support makes PostSharp integration with Visual Studio more relevant in large cross-platform projects.
    • Localizable Code Contracts allow you to customize or localize the runtime exception texts thrown by code contracts.

For more details, please see the previous release announcements.

As usually, RC quality means that we consider the quality of this release to be the same as of an RTM release, with the exception of end-user testing. It also means that the documentation is available.

We won’t have time to blog much more for this RC release, this is why we are hiring a Developer Evangelist to help us do a better job with our communication.

Happy PostSharping!


If you’ve ever wondered how important Russian developers are to the .NET community, look no further than Resharper and DevExpress. The first comes to us from Saint Petersburg with love, the second is located in Tula, a 2-hour drive South from Moscow. At time when politicians and media feed us with fears and lies about Russia, we would like to remind how fruitful this relationship is to developers of all countries – and want to contribute to strengthen it.

Today, I’m excited to announce I’ll deliver the Patterns On The Road tour from March 11th to March 18th in Moscow and St Petersburg, the largest developer communities in Moscow. The objective of this tour is to talk about the idea of pattern-oriented development: not just designing with patterns (what you’ve hopefully already done since the GoF book), but also thinking and coding with patterns. I’ll show how these ideas apply to a killer problem: thread safety. For those who want to learn about PostSharp, there will be a free training day in both towns.

An evening of patterns or a full day of PostSharp? Choose what’s best for you:

Evening Meet-up: Patterns Don't Stop at Design - Be a Pattern-Driven Team

Design patterns are now universally accepted and have significantly improved the way we design software. However, they had relatively little impact on how we implement it. This talk advocates for a better integration of pattern thinking in the whole development cycle. It challenges popular dogmas about design patterns and shows unexpected connections with agile methodologies. It shows how to apply pattern thinking to a top problem: thread safety.

  • On March 12 (Moscow) or 16 (St Petersburg) evening. FREE event. Register now.

Training Day: Advanced PostSharp From the Horse’s Mouth

While the evening lecture remains quite general, this training day describes how we can implement pattern-driven development specifically with PostSharp.

The course opens with a quick journey through the history of programming languages and design patterns, then asks the fundamental question: why is it that we think in terms of patterns, and actually design with patterns, but actually abandon that pattern thinking as soon as we start writing code? This sets up the agenda for the whole day: thread safety, INotifyPropertyChanged, undo/redo, aspect-oriented programming and architecture validation.

  • On March 13 (Moscow) or 17 (St Petersburg). FREE event but limited capacity. Register now.


I’m looking forward to visit Russia again after almost 20 years. Additionally to delivers public talks, I’ll visit Kaspersky Lab in Moscow and JetBrains in St Petersburg. It will be exciting to meet the developers there.

Happy PostSharping!