- Anotar Simplifies logging through a static class and some IL manipulation.
- AsyncErrorHandler Integrates error handling into async and TPL code.
- AutoProperties Extends control over auto-properties, like directly accessing the backing field or intercepting getters and setters.
- BasicFodyAddin Used to illustrate how to build an addin.
- Bindables Converts auto properties into Wpf dependency or attached properties. Allows specifying options, defining readonly properties, and calling property changed methods.
- Caseless Change string comparisons to be case insensitive.
- Catel For transforming automatic properties into Catel properties.
- ConfigureAwait Set the async ConfigureAwait at a global level for all await calls.
- Costura For embedding references as resources.
- EmptyConstructor Adds an empty constructor to classes even if a non empty one is defined.
- Equals Generate Equals, GetHashCode and operators methods from properties.
- Equatable Generate Equals, GetHashCode and operators methods from explicit annotated fields and properties.
- ExtraConstraints Facilitates adding constraints for Enum and Delegate to types and methods.
- InfoOf Provides
methodof
,propertyof
andfieldof
equivalents oftypeof
. - InlineIL Provides a way to embed arbitrary IL instructions in existing code.
- Ionad Replaces static method calls.
- Janitor Simplifies the implementation of IDisposable.
- JetBrainsAnnotations Converts all JetBrains ReSharper code annotation attributes to External Annotations.
- Lazy Automates the plumbing around System.Lazy.
- LoadAssembliesOnStartup Loads references on startup by using the types in the module initializer.
- LocalsInit Controls the value of the
localsinit
flag on methods, to improve the performance ofstackalloc
for instance. - LoggerIsEnabled Adds
ILogger.IsEnabled
check around the logging statement for the Microsoft.Extensions.Logging. - MethodBoundaryAspect Allows to decorate methods and hook into method start, method end and method exceptions (like PostSharp).
- MethodDecorator Decorate arbitrary methods to run code before and after invocation.
- MethodTimer Injects method timing code.
- ModuleInit Adds a module initializer to an assembly.
- NullGuard Adds null argument checks to an assembly.
- Obsolete Helps keep usages of ObsoleteAttribute consistent.
- PropertyChanged Injects INotifyPropertyChanged code into properties.
- PropertyChanging Injects INotifyPropertyChanging code into properties.
- Publicize Converts non-public members to public hidden members.
- ReactiveUI.Fody Generates ReactiveUI
RaisePropertyChanged
notifications for properties andOAPH
s. - Resourcer Simplifies reading embedded resources from an Assembly.
- RuntimeNullables Runtime C# 8+ Nullable Reference Type (NRT) contract validation.
- Someta Offers the ability to intercept methods, properties, and events; inject fields into classes; and inject code inside constructors.
- SplashScreen Use WPF splash screen as a WPF Control instead of a static bitmap.
- StampSvn Stamps an assembly with SVN data.
- Substitute Substitute types with other types to e.g. intercept generated code.
- SwallowExceptions Swallow Exceptions in targeted methods.
- Throttle Easily use throttles with minimal coding.
- ToString Generate
ToString
method from public properties. - Tracer Adds trace-enter and trace-leave log entries for selected methods.
- Undisposed Debugging tool to track down undisposed objects.
- Validar Injects IDataErrorInfo or INotifyDataErrorInfo code into a class at compile time.
- Vandelay Simplifies MEF importing\exporting.
- Visualize Adds debugger attributes to help visualize objects.
- Virtuosity Change all members to virtual.
- WeakEventHandler Changes regular event handlers into weak event handlers by weaving a weak event adapter between source and subscriber.
- WeakEvents Automatic publishing of weak events via compile time code weaving and a supporting runtime library.
- With Methods to return copies of immutable objects with one property modified.
The below addins are no longer maintained. Raise an issue in the specific project to take ownership.
- ArraySlice ArraySlice allows to build shared memory array views without performance impact. It uses IL manipulation to achieve the fastest implementation.
- AssertMessage Generates 'message' from sourcecode and adds it to assertion.
- AutoDependencyProperty Generates WPF DependencyProperty boilerplate from automatic C# properties.
- AutoLazy Automatically implements the double-checked locking pattern on specified properties and methods.
- Cauldron Provides method, property and field interception. It also provides weavers for Cauldron.Core and Cauldron.Activator.
- Cilador Write mixins in C# for code reuse without inheritance.
- Commander Injects ICommand properties and implementations for use in MVVM applications.
- CryptStr Encrypts literal strings in .NET assemblies.
- DependencyInjection automatic dependency injection for Ninject, Autofac and Spring.
- EmptyStringGuard Adds empty string argument checks to an assembly.
- EnableFaking Allows faking types without writing interfaces for testing purposes only.
- Expose Exposes members and optionally implements interface of a field declared in class.
- FactoryId Simplifies the implementation of Factory Method Pattern.
- Fielder Converts public fields to public properties.
- Freezable Implements the Freezable pattern.
- Immutable Creates immutable types.
- MethodCache Caches return values of methods decorated with a
CacheAttribute
. - Mixins A mixin is a class that provides a certain functionality to be inherited or reused by a subclass.
- Mutable Make F# setters for union types and eliminate need for
CLIMutable
attribute for records. - Mvid Adds the ability to specify the assembly MVID (Module Version Id).
- NameOf Provides strongly typed access to a compile-time string representing the name of a variable, field, property, method, event, enum value, or type.
- Nancy.ModelPostprocess Modify Nancy models after route execution but before serialization
- NObservable MobX-like observable state management library with Blazor support.
- Padded Adds padding to fight the false sharing problem.
- QueryValidator Validates DB queries during a build.
- RemoveReference Facilitates removing references in a compiled assembly during a build.
- RomanticWeb Fody weaver plugin for RomanticWeb instrumentation.
- Scalpel Strips tests from an assembly.
- Seal mark all non-virtual(abstract, non-sealed) types as sealed by default.
- SexyProxy Proxy generator with support for async patterns.
- Spring Spring constructor configuration.
- Stamp Stamps an assembly with git data.
- StaticProxy Proxy Generator, also for .net standard / .net core (.net standard 1.0+).
- Stiletto Compile-time static analysis and optimization for the Stiletto IoC library.
- Tail Adds a postfixed method call instruction to recursive calls.
- TestFlask Records method args and responses to replay, assert and test.
- Unsealed A Fody weaver to unseal sealed types.
- Usable Adds using statements for local variables that have been created, and implement IDisposable.
- YALF Yet Another Logging Framework.