Found 17 packages
Provides attributes, such as GeneratedCodeAttribute and SuppresMessageAttribute, that are emitted or consumed by analysis tools. Commonly Used Types: System.CodeDom.Compiler.GeneratedCodeAttribute System.Diagnostics.CodeAnalysis.SuppressMessageAttribute When using NuGet 3.x this package requires at least version 3.4.
Internal implementation package not meant for direct consumption. Please do not reference directly. Provides attributes, such as GeneratedCodeAttribute and SuppresMessageAttribute, that are emitted or consumed by analysis tools. Commonly Used Types: System.CodeDom.Compiler.GeneratedCodeAttribute System.Diagnostics.CodeAnalysis.SuppressMessageAttribute When using NuGet 3.x this package requires at least version 3.4.
Fody add-in to decorate public members with ExcludeFromCodeCoverage attribute based on definition (esp. for generated classes e.g. by xsd.exe or other tools where it is not possible to influence the output)
Allows to generate code with Source Generators. Support: MvvmLib, Prism (installation detected) Class Level Attributes: - Inpc: to implement INotifyPropertyChanged - BindableObject: allows to add BindableBase Class (and implement IActiveAware for Prism) Field Level Attribute: - BindableProperty: allows to use "Setproperty", specify properties (OnPropertyChanged/RaisePropertyChanged) and commands (RaiseCanExecuteChanged) notified when the value has changed. Method Level Attribute: - Command: for add a DelegateCommand with CanExecute method and Name to specify a custom command name. (Comments supported on fields and methods for generated properties and commands)
AssemblyVersionInfo is a very simple source generator that generates constant strings of your assembly name and version. The intended usage is for the System.CodeDom.Compiler.GeneratedCodeAttribute.
Simple object mapping library which consists of lightweight library of mapping interfaces, attributes and helper methods with code analyser and generator for generating mapping boilerplate code. What is the difference between this mapper and other object mappers: - No reflection: code is generated and compiled along with other hand written code. - Refactoring friendly: if someone changes property which is part of mapping code, project will not compile any more. - No magic: from generated code you see exactly what gets copied and what does not. No need to run application to see result of mapping code. Features: - Generates mapping code based on mapping interfaces or mapping attribute. Detailed examples of usage are on the project site. - Generates mapping between two objects for properties that are named the same and have the same type. - Only public properties are considered and source getter and target setter must be public. - If source and target types are collections, mapping code will copy objects from one collection to another if generic type is the same. Non generic collections are not supported.
Provides the [FlagsEnumeration] attribute for use when signaling when bitwise operators and so forth are to be auto generated at build time.
This package generates a static `ThisAssembly.Metadata` class with public constants exposing each `[System.Reflection.AssemblyMetadata(..)]` defined for the project, such as when using .NET 5.0+ support for `AssemblyMetadata` MSBuild items. So for an attribute like: [assembly: System.Reflection.AssemblyMetadataAttribute("Foo", "Bar")] A corresponding `ThisAssembly.Metadata.Foo` constant with the value `Bar` is provided. The metadata attribute can alternatively be declared using MSBuild in the project (for .NET 5.0+ projects): <ItemGroup> <AssemblyMetadata Include="Foo" Value="Bar" /> </ItemGroup> Generated code: C#: partial class ThisAssembly { public static partial class Metadata { public const string Foo = "Bar"; } }
Adds Html5EditorFor (it's safe to just replace EditorFor withHtml5EditorFor) which allows to add custom data-* and custom attributes and generates inputs with HTML 5 input type like number, range etc. Input type can be generated by: type (int, float etc.), DataType attribute or custom Html5XAttribute. Html5EditorFor base on EditorFor - source code.
Creates a class to access resx strings with named parameters and provides access to the resource keys to use with attribute-based validations. Features - Exposes resource entries format parameters as named method arguments - Exposes resource keys as constants to use in attribute-based validations - Organizes resource entries according to "area" delimited by underscore - Generates C# and VB.NET code - Integrates with Visual Studio to auto create and update Smart String Resources files - Generated namespaces and classes names and accessibility levels can be customized - Optional culture parameter can be specified - Works with team members that do not have Smart String Resources installed It is based on NETFx Smart String Resources but has more features like support to C# and VB.NET, optional culture parameter and Visual Studio extension to auto create and update files and generation of resource keys constants.
Automatic generation of gRPC server and client code from .NET interfaces When referenced by a project, this package adds itself into the compilation pipeline in the following way: For every dependent project which is marked by the GenerateGrpc attribute, it loads all eligible C# interfaces and for every such interface generates the following code: - A set of *.proto files for the hierarchy of DTO classes referenced by the source interface; - A set of C# conversion (partial) classes which provide implicit conversion operators for "gRPC - DTO" conversion for every generated *.proto file; - A gRPC server implementation which depends on source interface (via DI) and internally calls this interface for corresponding interface method implementation; - A gRPC client class which implements source interface by calling gRPC server via gRPC.
A Roslyn analyzer that detects ILogger.Log* method calls and provides code fixes to convert them to compile-time generated logging using the [LoggerMessage] attribute for better performance.
Provides platform independent navigation at the MVVM level and a Source Generator that automatically binds view and view models and registers this in your DI container ⭐ Last 10 features: - feat: Added BeforeInitializeComponent/AfterInitializeComponent partial methods when generating constructors. Fixed ViewModel init order. 2023-09-14 - feat: Now you can implement IActivatable for window/control and it will work. 2023-09-14 - feat: Implemented assembly:MapViews attribute. 2023-09-05 - feat: Added Activation support. 2023-09-04 - feat: Added separate property for InitializeComponent constructor. 2023-09-03 - feat: Released 0.2.0. 2023-09-03 - feat: Added Type markup extension. 2023-09-03 - feat: Added Properties.ViewModelType. 2023-09-02 - feat: Added HostApplicationBuilderExtensions. 2023-09-02 - feat: Removed Ioc.Default from main code. 2023-09-02 🐞 Last 10 bug fixes: - fix: Fixed work of ServiceLifetime.None. 2023-09-22 - fix: Fixed ViewLifetime/ViewModelLifetime. 2023-09-22 - fix: Fixed ViewModel/ViewModelType default binding mode. 2023-09-22 - fix: Removed views with ViewFor attribute from MapViews generation. Closes #6. 2023-09-17 - fix: Fixed issue with combined MapViews and ViewFor. 2023-09-16 - fix: Added try to resolve IResolver from Ioc.Default. 2023-09-15 - fix: Fixed ambiguities with resolver. 2023-09-14 - fix: Generated ViewModel property can be null now. 2023-09-12 - fix: Fixed problems with DependencyPropertyGenerator. 2023-09-11 - fix: Fixed "An expression is too long or complex to compile" in big projects. 2023-09-07
The fastest INotifyPropertyChanged source generator for .NET. Eliminates MVVM boilerplate with a single [Notify] attribute. Zero runtime overhead, full IntelliSense, and debuggable generated code. Features: • Auto-generates properties with PropertyChanged notifications • Built-in equality guards prevent redundant events • Partial hooks: OnPropertyChanging/OnPropertyChanged • [NotifyAlso] for dependent properties • [NotifySetter] for access control (private, protected, internal) • INotifyPropertyChanging support for undo/redo scenarios • [NotifyCanExecuteChangedFor] for automatic command refresh • [NotifySuppressable] for batch notification suppression • Works with WPF, MAUI, Blazor, Avalonia, Uno Platform, WinUI, Xamarin • AOT Compatible and Trimming Safe Benchmark-proven fastest: Outperforms CommunityToolkit.Mvvm, Prism, and Fody in all tests.
This package generates a static `ThisAssembly.Constants` class with public constants for each Constant MSBuild item in the project. For example: <ItemGroup> <Constant Include="Foo.Bar" Value="Baz" /> </ItemGroup> Results in a corresponding `ThisAssembly.Constants.Foo.Bar` constant with the value `Baz`: Generated code: C#: partial class ThisAssembly { public static partial class Constants { public static partial class Foo { public const string Bar = "Baz"; } } } > This project uses SponsorLink to attribute sponsor status (direct, indirect or implicit). For IDE usage, sponsor status is required. > IDE-only warnings will be emitted after a grace period otherwise. Learn more at https://github.com/devlooped#sponsorlink.