Welcome to this collection of PostSharp example projects.
You can browse these samples online and navigate the code just by clicking on code references, or you can download them on GitHub.
Project | Description |
---|---|
Aspect Framework | |
PostSharp.Samples.CustomLogging | Logs method calls including parameter values. |
PostSharp.Samples.CustomCaching | Caches the results of methods calls |
PostSharp.Samples.ExceptionHandling | Add parameter values to call stack in exception details. Report and then swallow exceptions in entry points. |
PostSharp.Samples.AutoRetry | Automatically retries a method call when it fails. |
PostSharp.Samples.WeakEvent | Prevents memory leaks due to events. |
PostSharp.Samples.ValidateResourceString | Prints a build-time warning when incorrect resource string name is passed to parameter. |
PostSharp.Samples.SessionState | Stores a field or property in the session state or page view state. |
PostSharp.Samples.Transactions | Automatically executes a method inside a transaction. |
PostSharp.Samples.Profiling | Measure different execution times of methods, including async methods. |
PostSharp.Samples.Encryption | Automatically encrypts and decrypts parameter and fields/properties |
PostSharp.Samples.MiniProfiler | Measures method execution time with MiniProfiler of StackExchange. |
PostSharp.Samples.Persistence | Persists fields or properties into the Windows registry or app.config . |
PostSharp.Samples.AutoDataContract | Automatically adds [DataContract] and [DataMember] attributes to derived classes and all properties |
PostSharp.Samples.Authorization | Requires permissions before getting or setting fields or executing methods. |
Diagnostics | |
PostSharp.Samples.Logging.Customization | Shows how to customize PostSharp Logging. |
PostSharp.Samples.Logging.Console | Demonstrates how to configure PostSharp Logging so that it directs its output to the system console. |
PostSharp.Samples.Logging.Etw | Demonstrates how to configure PostSharp Logging so that it directs its output to ETW. |
PostSharp.Samples.Logging.Log4Net | Demonstrates how to configure PostSharp Logging so that it directs its output to log4net. |
PostSharp.Samples.Logging.NLog | Demonstrates how to configure PostSharp Logging so that it directs its output to NLog. |
PostSharp.Samples.Logging.Serilog | Demonstrates how to configure PostSharp Logging so that it directs its output to Serilog. |
PostSharp.Samples.Logging.Loupe | Demonstrates how to configure PostSharp Logging so that it directs its output to Loupe. |
PostSharp.Samples.Logging.CommonLogging | Demonstrates how to configure PostSharp Logging so that it directs its output to Common.Logging. |
PostSharp.Samples.Logging.CustomBackend.ServiceStack | Demonstrates how to implement a PostSharp Logging adapter for your custom logging framework. |
PostSharp.Samples.Logging.Audit | Shows how to append an audit record to a database when a method is invoked. |
PostSharp.Samples.Logging.Audit.Extended | Shows how to add custom pieces of information to the audit record. |
XAML | |
PostSharp.Samples.Xaml | Demonstrates a few ready-made aspects that are useful for XAML |
Caching | |
PostSharp.Samples.Caching | Caching method results with Redis and different ways to remove things from the cache. |
Threading | |
PostSharp.Samples.Threading.PingPong | The classic educational ping-pong example. |
PostSharp.Samples.Threading.ThreadDispatching | A simple WPF progress bar updated from a background thread. |