Found 38 packages
Provides types that retrieve information about assemblies, modules, members, parameters, and other entities in managed code by examining their metadata. These types also can be used to manipulate instances of loaded types, for example to hook up events or to invoke methods. Commonly Used Types: System.Reflection.MethodInfo System.Reflection.PropertyInfo System.Reflection.ParameterInfo System.Reflection.FieldInfo System.Reflection.ConstructorInfo System.Reflection.Assembly System.Reflection.MemberInfo System.Reflection.EventInfo System.Reflection.Module When using NuGet 3.x this package requires at least version 3.4.
Provides classes that allow a compiler or tool to emit metadata and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers. Commonly Used Types: System.Reflection.Emit.AssemblyBuilder System.Reflection.Emit.FieldBuilder System.Reflection.Emit.TypeBuilder System.Reflection.Emit.MethodBuilder System.Reflection.Emit.ConstructorBuilder System.Reflection.Emit.GenericTypeParameterBuilder System.Reflection.Emit.ModuleBuilder System.Reflection.Emit.PropertyBuilder System.Reflection.Emit.AssemblyBuilderAccess System.Reflection.Emit.EventBuilder 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 types that retrieve information about assemblies, modules, members, parameters, and other entities in managed code by examining their metadata. These types also can be used to manipulate instances of loaded types, for example to hook up events or to invoke methods. Commonly Used Types: System.Reflection.MethodInfo System.Reflection.PropertyInfo System.Reflection.ParameterInfo System.Reflection.FieldInfo System.Reflection.ConstructorInfo System.Reflection.Assembly System.Reflection.MemberInfo System.Reflection.EventInfo System.Reflection.Module When using NuGet 3.x this package requires at least version 3.4.
Code Fix for a record (immutable class/struct) constructor generated from get-only properties
Expressions like "myParam.MyList[i].MyProperty" can be converted to text or their value retrieved or info like { "MyMethod", Parameters = { "myParameter", int, 3 } } Accessor IsIndexer IsNullableType IsProperty IsReferenceType IsStatic IsSimpleType IsDefault GetBaseClasses GetImplementations GetItemType GetPropertyOrException GetUnderlyingNullableTypeFast TypesFromObjects. ReflectionCache with fast GetProperties GetFields GetConstructor GetTypeByShortName. Overloads for PropertInfo.GetValue IsAssignableFrom IsAssignableTo CreateInstance.
For expressions and reflection. Turn lambdas into text: "myParam.MyList[i].MyProperty". Extract structured method call data: { "MyMethod", Parameters = { "myParameter", int, 3 } }. Find types and implementations for plug-ins. Access private members with Accessors. Use ReflectionCache for fast access to properties, fields, methods and indexers. Includes helpers like IsIndexer, IsStatic and more!
Some generic test utilites.
ExpressionDelegates is a tool which generates delegates to properties, fields, methods and constructors used in linq expression trees. The purpose of this library is to compile the most common and simplest operations in expression trees during the build to avoid their slow compilation at runtime or invoсation overhead after interpretation. If your project doesn't have linq expressions to generate delegates from and you just want to use the generated delegates from other assemblies, please install `ExpressionDelegates.Base` NuGet package to avoid any code generation attempts.
Requires Sitecore 10.3 Requires .NET 4.8 Constellation is a collection of utilities for .NET CMS implementers. The Foundation.ModelMapping library is inspired by AutoMapper and is designed to provide a quick, non-ORM method of mapping Sitecore Items to ViewModels. String properties on your ViewModel will be mapped to FieldRendered values from fields with the same names. Integer and DateTime property types can also be handled automatically, although you will not get page editor support for these types. There are a number of Attributes that you can assign to your ViewModel's properties to change the behavior of the Mapper. Usage: var modelMapper = (IModelMapper)ServiceLocator.ServiceProvider.GetService(typeof(IModelMapper)); // Dependency Injection of an IModelMapper is supported TModel viewModel = modelMapper.MapItemToNew<TModel>(sourceItem); Or: TModel viewmodel = item.MapToNew<TModel>(); Or: modelMapper.MapTo(item, model); When using Item or ItemList extensions for mapping, the context IModelMapper is requested from the ServiceLocator, so any moc objects you use for testing are supported with these extension methods. Constraints: - Your ViewModel must have a public, parameterless constructor. - Only Writable, Public Instance properties will be mapped. - Within Sitecore, your field names can be human-legible. ModelMapper will attempt to convert the field name to a valid Property name. Simpler names work best. You can use the Field's Display Name for better human legibility and keep the Field's actual name closer to a legit C# entity name. - ViewModel properties can be: - - Strings - - HtmlStrings (recommended for RichText and FieldRenderer) - - Integers - - Decimals - - DateTimes - - Other ViewModels (recommended for DropLink, DropTree) - - ICollection Generics of other ViewModels (recommended for Multilist, Treelist) - - ModelMapping.Model.ImageModel (for Image Fields, gives access to all field properties and permits generating different kinds of image URLs on the View.) - - ModelMapping.Model.GeneralLinkModel (for General Link fields, gives access to all field properties through a single object.) - - Random Plain Old Classes as long as they are Where T: class, new() The following Model properties are mapped to Item properties rather than Item fields: - ID - Maps to the Item.ID - Make sure you use Sitecore.Data.ID as the property type. - Name - Maps to the Item.Name - DisplayName - Maps to Item.DisplayName - Url - Should be a string, not a Uri. Causes the current context LinkManager to generate a Url for the Item. - Parent - Maps to the ViewModel you provide based on the Item.Parent. Support for XML Field Attributes - ImageField.Alt - use Model.FieldNameAlt - ImageField.Height - use Model.FieldNameHeight - GeneralLink.Target - use Model.FieldNameTarget - etc. Support for LinkField.TargetItem - use Model.FieldNameTargetItem and supply a class with public properties and a parameterless constructor. Support for MultilistField.GetItems - use Model.FieldName and supply a generic ICollection<T> where "T" is new() and has properties you can map. Extensible! See the Constellation.Foundation.ModelMapping.config file to change the way Fields are processed.
Allows commands to have services or dependencies provided by the CommandProcessor. For example a database command might look like this public class GetUserCommand : DbCommandBase<Use> { //Constructor only takes the arguments necessary to run the command public GetUserCommand(int userId) { this.UserId = userId; } public int UserId {get;set;} public override User Execute(IDbConnection db) { return db.Query<User>("Select * from User where Id = @UserId", new { UserId}, this.Transaction) .FirstOrDefault(); } } The Command executor will then provide the neccessary DbProviderFactory to the command before execution. (nb: The DbCommandBase is creating the actual connection) Commands can all execute other commands, e.g. this.Execute(new SendNewUserEmailCommand("Johnny", "John@doe.com")); It is then the responsiblity of the Command Executor to provide the necessary email sending service. More info can be found here. http://github.com/markkemper1/Commando
The ultimate fast alternative to Activator.CreateInstance<T> Up to 50x faster than Activator.CreateInstance<T> Generic Parameters Support Non-Public Constructor Support No Generic Constraints TryGetValue-like TryFastNew API Link Mode PublishTrimmed Support C# 8 Nullable Support C# 10 Parameterless struct constructors Support (Both invokes or not)
Mugen MVVM Toolkit makes it easier to develop cross-platform application using the Model-View-ViewModel design pattern. The Mugen MVVM Toolkit makes extensive use of Net Standard Library to provide maintainable cross platform C# native applications. The Mugen MVVM Toolkit provides a cross-platform MVVM development framework built on top of: - WinForms - WPF - Xamarin.Android - Xamarin.iOS - Xamarin.Forms - UWP The MVVM framework includes the following features that differs this project from other frameworks: - Deep integration with each platform. - Supports state preservation and restoration for mobile platforms. - Full Fragment support for Android, you do not need to worry about activity, fragments, sub-fragments or their state all this makes the framework. - Solves the nested user controls problem in MVVM, all view models are dynamically created by you, using the GetViewModel method and you do not need to use the ViewModelLocator. - Supports all kinds of navigation like modal window, page navigation, tab navigation, back stack fragment navigation for android. You can also easily add a new kind of navigation. - Navigation system works with view models and allows to expect the completion of the operation. You can pass any parameters between view models. - Good design mode support, for xaml platforms supports the creation of design view model with any constructor parameters. - Supports bindings on all platforms, all of the native binding features available for WPF platform available on all platforms and even more. - Binding supports C# language expressions like Linq, Extension methods, method call, ternary operator (?:), coalescing operator (??), etc. - Supports subscription to any control event. - Built-in support for validation. - You can easily write their own extensions for bindings. - Supports attached members (properties, events, methods), you can extend any object as you want. - Special editor for WinForms, you do not need to write code to create bindings. - Binding parser builds syntax tree that allows you to easily change or extend the bindings, without manipulation of the raw text. - Binding supports fluent syntax. - Excellent binding performance.
The teeniest dependency injector I can get away with. Only supports constructor injection. You probably don't want to use this.
Configurable Source Generator Minimum requirement: .NET Standard 2.0 & C# 8.0 The ultimate fast alternative to Activator.CreateInstance<T> Up to 50x faster than Activator.CreateInstance<T> Generic Parameters Support Non-Public Constructor Support No Generic Constraints TryGetValue-like TryFastNew API Link Mode PublishTrimmed Support C# 8 Nullable Support C# 10 Parameterless struct constructors Support (Both invokes or not)
Provides types for returning values without nulls. Provides three classes of the interface IOption<T>: * Some<T> is a class for holding a valid value. It holds one readonly value which is set in the constructor. This is to immutable. * None<T> is a readonly struct for holding nothing. This is replacing null. * Err<T> class holds a readonly exception (set in constructor) as ex which can be used for returning errors without throwing them until you need. IOption<T> provides one public method: bool HasValue(out T value) which can be used to check if the returned type is a Some<T>, and if it is, to get the value in the out parameter. Use this with care, as if it returns false, value will be default, which is often null. Best to define the out parameter inline to prevent using it wrongly. eg: if(option.HasValue(out string answer)){ //do stuff with answer here}
This package contains the binding extensions. Mugen MVVM Toolkit makes it easier to develop cross-platform application using the Model-View-ViewModel design pattern. The Mugen MVVM Toolkit makes extensive use of Net Standard Library to provide maintainable cross platform C# native applications. The Mugen MVVM Toolkit provides a cross-platform MVVM development framework built on top of: - WinForms - WPF - Xamarin.Android - Xamarin.iOS - Xamarin.Forms - UWP The MVVM framework includes the following features that differs this project from other frameworks: - Deep integration with each platform. - Supports state preservation and restoration for mobile platforms. - Full Fragment support for Android, you do not need to worry about activity, fragments, sub-fragments or their state all this makes the framework. - Solves the nested user controls problem in MVVM, all view models are dynamically created by you, using the GetViewModel method and you do not need to use the ViewModelLocator. - Supports all kinds of navigation like modal window, page navigation, tab navigation, back stack fragment navigation for android. You can also easily add a new kind of navigation. - Navigation system works with view models and allows to expect the completion of the operation. You can pass any parameters between view models. - Good design mode support, for xaml platforms supports the creation of design view model with any constructor parameters. - Supports bindings on all platforms, all of the native binding features available for WPF platform available on all platforms and even more. - Binding supports C# language expressions like Linq, Extension methods, method call, ternary operator (?:), coalescing operator (??), etc. - Supports subscription to any control event. - Built-in support for validation. - You can easily write their own extensions for bindings. - Supports attached members (properties, events, methods), you can extend any object as you want. - Special editor for WinForms, you do not need to write code to create bindings. - Binding parser builds syntax tree that allows you to easily change or extend the bindings, without manipulation of the raw text. - Binding supports fluent syntax. - Excellent binding performance.
NOTE: It's enough to add this package to only Portable Layer. v.1.4.0 Added namingRule to objects. v.1.3.0 UPDATED!! Fully upggraded to .Net Standard 2.0 Object Collection Saving & Loading problem solved. Clear() problem solved. It works fine now. v.1.2.3 Stabled all features from v.1.2.2 Some collections saving problem fixed! v.1.2.2 IgnoreSave attribute fixed! You can save, load, clear any object with static methods, SavableObject.Save(); SavableObject.Load(); SavableObject.Clear(); v.1.2.1 UPDATE !! Same properties from different classes, overries each other. This problem fixed and all properties are saved for its own class v.1.2.0 UPDATE!!! Plugin converted to .Net Standard template, you may change your references BUGS - ObservableCollection is not supported for now, Please use IList on your property and set it in constructor as ObservableCollection. You can find that in sample project. Just Inherit from SavableObject and use Save() Load() Methods to save and load your data. You can keep your SavableObject as a Static variable or Property to reach from anywhere of your application. You can review the sample project from this link: https://github.com/enisn/TestAppSavableObject NEED MORE HELP? you can visit http://enisnecipoglu.com/xamarin-forms-saving-data-without-sql/ class UserInfo : SavableObject { public string Name { get; set;} [IgnoreSave] public byte Age{ get; set;} ~UserInfo() { Save(); } }
Creates a weighted random distribution. Can be used when certain values should occure more or less than when using Random. Values and distribution weight is supplied into the constructor. WeightedRandom.Next() can then be called to get the next value.
This package contains the WPF assemblies. Mugen MVVM Toolkit makes it easier to develop cross-platform application using the Model-View-ViewModel design pattern. The Mugen MVVM Toolkit makes extensive use of Net Standard Library to provide maintainable cross platform C# native applications. The Mugen MVVM Toolkit provides a cross-platform MVVM development framework built on top of: - WinForms - WPF - Xamarin.Android - Xamarin.iOS - Xamarin.Forms - UWP The MVVM framework includes the following features that differs this project from other frameworks: - Deep integration with each platform. - Supports state preservation and restoration for mobile platforms. - Full Fragment support for Android, you do not need to worry about activity, fragments, sub-fragments or their state all this makes the framework. - Solves the nested user controls problem in MVVM, all view models are dynamically created by you, using the GetViewModel method and you do not need to use the ViewModelLocator. - Supports all kinds of navigation like modal window, page navigation, tab navigation, back stack fragment navigation for android. You can also easily add a new kind of navigation. - Navigation system works with view models and allows to expect the completion of the operation. You can pass any parameters between view models. - Good design mode support, for xaml platforms supports the creation of design view model with any constructor parameters. - Supports bindings on all platforms, all of the native binding features available for WPF platform available on all platforms and even more. - Binding supports C# language expressions like Linq, Extension methods, method call, ternary operator (?:), coalescing operator (??), etc. - Supports subscription to any control event. - Built-in support for validation. - You can easily write their own extensions for bindings. - Supports attached members (properties, events, methods), you can extend any object as you want. - Special editor for WinForms, you do not need to write code to create bindings. - Binding parser builds syntax tree that allows you to easily change or extend the bindings, without manipulation of the raw text. - Binding supports fluent syntax. - Excellent binding performance.